Moved logic to generate a Mercurial diff to a separate module in order to reuse it.

Tue, 24 Feb 2015 18:55:07 +0100

author
Detlev Offenbach <detlev@die-offenbachs.de>
date
Tue, 24 Feb 2015 18:55:07 +0100
changeset 4130
c5af9f10a061
parent 4128
6e1ee14d5f23
child 4131
5d9e1a724c1f

Moved logic to generate a Mercurial diff to a separate module in order to reuse it.

APIs/Python3/eric6.api file | annotate | diff | comparison | revisions
APIs/Python3/eric6.bas file | annotate | diff | comparison | revisions
Documentation/Help/source.qch file | annotate | diff | comparison | revisions
Documentation/Help/source.qhp file | annotate | diff | comparison | revisions
Documentation/Source/eric6.Plugins.VcsPlugins.vcsMercurial.HgDiffDialog.html file | annotate | diff | comparison | revisions
Documentation/Source/index-eric6.Plugins.VcsPlugins.vcsMercurial.html file | annotate | diff | comparison | revisions
Plugins/VcsPlugins/vcsMercurial/HgDiffDialog.py file | annotate | diff | comparison | revisions
Plugins/VcsPlugins/vcsMercurial/HgDiffDialog.ui file | annotate | diff | comparison | revisions
Plugins/VcsPlugins/vcsMercurial/HgDiffGenerator.py file | annotate | diff | comparison | revisions
eric6.e4p file | annotate | diff | comparison | revisions
i18n/eric6_cs.ts file | annotate | diff | comparison | revisions
i18n/eric6_de.qm file | annotate | diff | comparison | revisions
i18n/eric6_de.ts file | annotate | diff | comparison | revisions
i18n/eric6_en.ts file | annotate | diff | comparison | revisions
i18n/eric6_es.qm file | annotate | diff | comparison | revisions
i18n/eric6_es.ts file | annotate | diff | comparison | revisions
i18n/eric6_fr.ts file | annotate | diff | comparison | revisions
i18n/eric6_it.ts file | annotate | diff | comparison | revisions
i18n/eric6_pt.ts file | annotate | diff | comparison | revisions
i18n/eric6_ru.qm file | annotate | diff | comparison | revisions
i18n/eric6_ru.ts file | annotate | diff | comparison | revisions
i18n/eric6_tr.ts file | annotate | diff | comparison | revisions
i18n/eric6_zh_CN.GB2312.ts file | annotate | diff | comparison | revisions
--- a/APIs/Python3/eric6.api	Tue Feb 24 18:31:14 2015 +0100
+++ b/APIs/Python3/eric6.api	Tue Feb 24 18:55:07 2015 +0100
@@ -4626,16 +4626,17 @@
 eric6.Plugins.VcsPlugins.vcsMercurial.HgDialog.HgDialog.startProcess?4(args, workingDir=None, showArgs=True)
 eric6.Plugins.VcsPlugins.vcsMercurial.HgDialog.HgDialog?1(text, hg=None, useClient=True, parent=None)
 eric6.Plugins.VcsPlugins.vcsMercurial.HgDiffDialog.HgDiffDialog.closeEvent?4(e)
-eric6.Plugins.VcsPlugins.vcsMercurial.HgDiffDialog.HgDiffDialog.keyPressEvent?4(evt)
 eric6.Plugins.VcsPlugins.vcsMercurial.HgDiffDialog.HgDiffDialog.on_buttonBox_clicked?4(button)
 eric6.Plugins.VcsPlugins.vcsMercurial.HgDiffDialog.HgDiffDialog.on_filesCombo_activated?4(index)
-eric6.Plugins.VcsPlugins.vcsMercurial.HgDiffDialog.HgDiffDialog.on_input_returnPressed?4()
-eric6.Plugins.VcsPlugins.vcsMercurial.HgDiffDialog.HgDiffDialog.on_passwordCheckBox_toggled?4(isOn)
 eric6.Plugins.VcsPlugins.vcsMercurial.HgDiffDialog.HgDiffDialog.on_refreshButton_clicked?4()
 eric6.Plugins.VcsPlugins.vcsMercurial.HgDiffDialog.HgDiffDialog.on_saveButton_clicked?4()
-eric6.Plugins.VcsPlugins.vcsMercurial.HgDiffDialog.HgDiffDialog.on_sendButton_clicked?4()
 eric6.Plugins.VcsPlugins.vcsMercurial.HgDiffDialog.HgDiffDialog.start?4(fn, versions=None, bundle=None, qdiff=False, refreshable=False)
 eric6.Plugins.VcsPlugins.vcsMercurial.HgDiffDialog.HgDiffDialog?1(vcs, parent=None)
+eric6.Plugins.VcsPlugins.vcsMercurial.HgDiffGenerator.HgDiffGenerator.finished?7
+eric6.Plugins.VcsPlugins.vcsMercurial.HgDiffGenerator.HgDiffGenerator.getResult?4()
+eric6.Plugins.VcsPlugins.vcsMercurial.HgDiffGenerator.HgDiffGenerator.start?4(fn, versions=None, bundle=None, qdiff=False)
+eric6.Plugins.VcsPlugins.vcsMercurial.HgDiffGenerator.HgDiffGenerator.stopProcess?4()
+eric6.Plugins.VcsPlugins.vcsMercurial.HgDiffGenerator.HgDiffGenerator?1(vcs, parent=None)
 eric6.Plugins.VcsPlugins.vcsMercurial.HgDiffHighlighter.HgDiffHighlighter.generateRules?4()
 eric6.Plugins.VcsPlugins.vcsMercurial.HgDiffHighlighter.HgDiffHighlighter?1(doc)
 eric6.Plugins.VcsPlugins.vcsMercurial.HgExportDialog.HgExportDialog.getParameters?4()
--- a/APIs/Python3/eric6.bas	Tue Feb 24 18:31:14 2015 +0100
+++ b/APIs/Python3/eric6.bas	Tue Feb 24 18:55:07 2015 +0100
@@ -307,6 +307,7 @@
 HgCopyDialog QDialog Ui_HgCopyDialog
 HgDialog QDialog Ui_HgDialog
 HgDiffDialog QWidget Ui_HgDiffDialog
+HgDiffGenerator QObject
 HgDiffHighlighter E5GenericDiffHighlighter
 HgExportDialog QDialog Ui_HgExportDialog
 HgExtension QObject
Binary file Documentation/Help/source.qch has changed
--- a/Documentation/Help/source.qhp	Tue Feb 24 18:31:14 2015 +0100
+++ b/Documentation/Help/source.qhp	Tue Feb 24 18:55:07 2015 +0100
@@ -570,6 +570,7 @@
                 <section title="eric6.Plugins.VcsPlugins.vcsMercurial.HgCopyDialog" ref="eric6.Plugins.VcsPlugins.vcsMercurial.HgCopyDialog.html" />
                 <section title="eric6.Plugins.VcsPlugins.vcsMercurial.HgDialog" ref="eric6.Plugins.VcsPlugins.vcsMercurial.HgDialog.html" />
                 <section title="eric6.Plugins.VcsPlugins.vcsMercurial.HgDiffDialog" ref="eric6.Plugins.VcsPlugins.vcsMercurial.HgDiffDialog.html" />
+                <section title="eric6.Plugins.VcsPlugins.vcsMercurial.HgDiffGenerator" ref="eric6.Plugins.VcsPlugins.vcsMercurial.HgDiffGenerator.html" />
                 <section title="eric6.Plugins.VcsPlugins.vcsMercurial.HgDiffHighlighter" ref="eric6.Plugins.VcsPlugins.vcsMercurial.HgDiffHighlighter.html" />
                 <section title="eric6.Plugins.VcsPlugins.vcsMercurial.HgExportDialog" ref="eric6.Plugins.VcsPlugins.vcsMercurial.HgExportDialog.html" />
                 <section title="eric6.Plugins.VcsPlugins.vcsMercurial.HgExtension" ref="eric6.Plugins.VcsPlugins.vcsMercurial.HgExtension.html" />
@@ -5958,26 +5959,26 @@
       <keyword name="HgDiffDialog" id="HgDiffDialog" ref="eric6.Plugins.VcsPlugins.vcsMercurial.HgDiffDialog.html#HgDiffDialog" />
       <keyword name="HgDiffDialog (Constructor)" id="HgDiffDialog (Constructor)" ref="eric6.Plugins.VcsPlugins.vcsMercurial.HgDiffDialog.html#HgDiffDialog.__init__" />
       <keyword name="HgDiffDialog (Module)" id="HgDiffDialog (Module)" ref="eric6.Plugins.VcsPlugins.vcsMercurial.HgDiffDialog.html" />
-      <keyword name="HgDiffDialog.__appendText" id="HgDiffDialog.__appendText" ref="eric6.Plugins.VcsPlugins.vcsMercurial.HgDiffDialog.html#HgDiffDialog.__appendText" />
-      <keyword name="HgDiffDialog.__extractFileName" id="HgDiffDialog.__extractFileName" ref="eric6.Plugins.VcsPlugins.vcsMercurial.HgDiffDialog.html#HgDiffDialog.__extractFileName" />
-      <keyword name="HgDiffDialog.__finish" id="HgDiffDialog.__finish" ref="eric6.Plugins.VcsPlugins.vcsMercurial.HgDiffDialog.html#HgDiffDialog.__finish" />
-      <keyword name="HgDiffDialog.__getVersionArg" id="HgDiffDialog.__getVersionArg" ref="eric6.Plugins.VcsPlugins.vcsMercurial.HgDiffDialog.html#HgDiffDialog.__getVersionArg" />
-      <keyword name="HgDiffDialog.__procFinished" id="HgDiffDialog.__procFinished" ref="eric6.Plugins.VcsPlugins.vcsMercurial.HgDiffDialog.html#HgDiffDialog.__procFinished" />
-      <keyword name="HgDiffDialog.__processFileLine" id="HgDiffDialog.__processFileLine" ref="eric6.Plugins.VcsPlugins.vcsMercurial.HgDiffDialog.html#HgDiffDialog.__processFileLine" />
-      <keyword name="HgDiffDialog.__processOutputLine" id="HgDiffDialog.__processOutputLine" ref="eric6.Plugins.VcsPlugins.vcsMercurial.HgDiffDialog.html#HgDiffDialog.__processOutputLine" />
-      <keyword name="HgDiffDialog.__readStderr" id="HgDiffDialog.__readStderr" ref="eric6.Plugins.VcsPlugins.vcsMercurial.HgDiffDialog.html#HgDiffDialog.__readStderr" />
-      <keyword name="HgDiffDialog.__readStdout" id="HgDiffDialog.__readStdout" ref="eric6.Plugins.VcsPlugins.vcsMercurial.HgDiffDialog.html#HgDiffDialog.__readStdout" />
-      <keyword name="HgDiffDialog.__showError" id="HgDiffDialog.__showError" ref="eric6.Plugins.VcsPlugins.vcsMercurial.HgDiffDialog.html#HgDiffDialog.__showError" />
+      <keyword name="HgDiffDialog.__generatorFinished" id="HgDiffDialog.__generatorFinished" ref="eric6.Plugins.VcsPlugins.vcsMercurial.HgDiffDialog.html#HgDiffDialog.__generatorFinished" />
       <keyword name="HgDiffDialog.closeEvent" id="HgDiffDialog.closeEvent" ref="eric6.Plugins.VcsPlugins.vcsMercurial.HgDiffDialog.html#HgDiffDialog.closeEvent" />
-      <keyword name="HgDiffDialog.keyPressEvent" id="HgDiffDialog.keyPressEvent" ref="eric6.Plugins.VcsPlugins.vcsMercurial.HgDiffDialog.html#HgDiffDialog.keyPressEvent" />
       <keyword name="HgDiffDialog.on_buttonBox_clicked" id="HgDiffDialog.on_buttonBox_clicked" ref="eric6.Plugins.VcsPlugins.vcsMercurial.HgDiffDialog.html#HgDiffDialog.on_buttonBox_clicked" />
       <keyword name="HgDiffDialog.on_filesCombo_activated" id="HgDiffDialog.on_filesCombo_activated" ref="eric6.Plugins.VcsPlugins.vcsMercurial.HgDiffDialog.html#HgDiffDialog.on_filesCombo_activated" />
-      <keyword name="HgDiffDialog.on_input_returnPressed" id="HgDiffDialog.on_input_returnPressed" ref="eric6.Plugins.VcsPlugins.vcsMercurial.HgDiffDialog.html#HgDiffDialog.on_input_returnPressed" />
-      <keyword name="HgDiffDialog.on_passwordCheckBox_toggled" id="HgDiffDialog.on_passwordCheckBox_toggled" ref="eric6.Plugins.VcsPlugins.vcsMercurial.HgDiffDialog.html#HgDiffDialog.on_passwordCheckBox_toggled" />
       <keyword name="HgDiffDialog.on_refreshButton_clicked" id="HgDiffDialog.on_refreshButton_clicked" ref="eric6.Plugins.VcsPlugins.vcsMercurial.HgDiffDialog.html#HgDiffDialog.on_refreshButton_clicked" />
       <keyword name="HgDiffDialog.on_saveButton_clicked" id="HgDiffDialog.on_saveButton_clicked" ref="eric6.Plugins.VcsPlugins.vcsMercurial.HgDiffDialog.html#HgDiffDialog.on_saveButton_clicked" />
-      <keyword name="HgDiffDialog.on_sendButton_clicked" id="HgDiffDialog.on_sendButton_clicked" ref="eric6.Plugins.VcsPlugins.vcsMercurial.HgDiffDialog.html#HgDiffDialog.on_sendButton_clicked" />
       <keyword name="HgDiffDialog.start" id="HgDiffDialog.start" ref="eric6.Plugins.VcsPlugins.vcsMercurial.HgDiffDialog.html#HgDiffDialog.start" />
+      <keyword name="HgDiffGenerator" id="HgDiffGenerator" ref="eric6.Plugins.VcsPlugins.vcsMercurial.HgDiffGenerator.html#HgDiffGenerator" />
+      <keyword name="HgDiffGenerator (Constructor)" id="HgDiffGenerator (Constructor)" ref="eric6.Plugins.VcsPlugins.vcsMercurial.HgDiffGenerator.html#HgDiffGenerator.__init__" />
+      <keyword name="HgDiffGenerator (Module)" id="HgDiffGenerator (Module)" ref="eric6.Plugins.VcsPlugins.vcsMercurial.HgDiffGenerator.html" />
+      <keyword name="HgDiffGenerator.__extractFileName" id="HgDiffGenerator.__extractFileName" ref="eric6.Plugins.VcsPlugins.vcsMercurial.HgDiffGenerator.html#HgDiffGenerator.__extractFileName" />
+      <keyword name="HgDiffGenerator.__finish" id="HgDiffGenerator.__finish" ref="eric6.Plugins.VcsPlugins.vcsMercurial.HgDiffGenerator.html#HgDiffGenerator.__finish" />
+      <keyword name="HgDiffGenerator.__getVersionArg" id="HgDiffGenerator.__getVersionArg" ref="eric6.Plugins.VcsPlugins.vcsMercurial.HgDiffGenerator.html#HgDiffGenerator.__getVersionArg" />
+      <keyword name="HgDiffGenerator.__processFileLine" id="HgDiffGenerator.__processFileLine" ref="eric6.Plugins.VcsPlugins.vcsMercurial.HgDiffGenerator.html#HgDiffGenerator.__processFileLine" />
+      <keyword name="HgDiffGenerator.__processOutputLine" id="HgDiffGenerator.__processOutputLine" ref="eric6.Plugins.VcsPlugins.vcsMercurial.HgDiffGenerator.html#HgDiffGenerator.__processOutputLine" />
+      <keyword name="HgDiffGenerator.__readStderr" id="HgDiffGenerator.__readStderr" ref="eric6.Plugins.VcsPlugins.vcsMercurial.HgDiffGenerator.html#HgDiffGenerator.__readStderr" />
+      <keyword name="HgDiffGenerator.__readStdout" id="HgDiffGenerator.__readStdout" ref="eric6.Plugins.VcsPlugins.vcsMercurial.HgDiffGenerator.html#HgDiffGenerator.__readStdout" />
+      <keyword name="HgDiffGenerator.getResult" id="HgDiffGenerator.getResult" ref="eric6.Plugins.VcsPlugins.vcsMercurial.HgDiffGenerator.html#HgDiffGenerator.getResult" />
+      <keyword name="HgDiffGenerator.start" id="HgDiffGenerator.start" ref="eric6.Plugins.VcsPlugins.vcsMercurial.HgDiffGenerator.html#HgDiffGenerator.start" />
+      <keyword name="HgDiffGenerator.stopProcess" id="HgDiffGenerator.stopProcess" ref="eric6.Plugins.VcsPlugins.vcsMercurial.HgDiffGenerator.html#HgDiffGenerator.stopProcess" />
       <keyword name="HgDiffHighlighter" id="HgDiffHighlighter" ref="eric6.Plugins.VcsPlugins.vcsMercurial.HgDiffHighlighter.html#HgDiffHighlighter" />
       <keyword name="HgDiffHighlighter (Constructor)" id="HgDiffHighlighter (Constructor)" ref="eric6.Plugins.VcsPlugins.vcsMercurial.HgDiffHighlighter.html#HgDiffHighlighter.__init__" />
       <keyword name="HgDiffHighlighter (Module)" id="HgDiffHighlighter (Module)" ref="eric6.Plugins.VcsPlugins.vcsMercurial.HgDiffHighlighter.html" />
@@ -14080,6 +14081,7 @@
       <file>eric6.Plugins.VcsPlugins.vcsMercurial.HgCopyDialog.html</file>
       <file>eric6.Plugins.VcsPlugins.vcsMercurial.HgDialog.html</file>
       <file>eric6.Plugins.VcsPlugins.vcsMercurial.HgDiffDialog.html</file>
+      <file>eric6.Plugins.VcsPlugins.vcsMercurial.HgDiffGenerator.html</file>
       <file>eric6.Plugins.VcsPlugins.vcsMercurial.HgDiffHighlighter.html</file>
       <file>eric6.Plugins.VcsPlugins.vcsMercurial.HgExportDialog.html</file>
       <file>eric6.Plugins.VcsPlugins.vcsMercurial.HgExtension.html</file>
--- a/Documentation/Source/eric6.Plugins.VcsPlugins.vcsMercurial.HgDiffDialog.html	Tue Feb 24 18:31:14 2015 +0100
+++ b/Documentation/Source/eric6.Plugins.VcsPlugins.vcsMercurial.HgDiffDialog.html	Tue Feb 24 18:55:07 2015 +0100
@@ -61,63 +61,24 @@
 <td><a href="#HgDiffDialog.__init__">HgDiffDialog</a></td>
 <td>Constructor</td>
 </tr><tr>
-<td><a href="#HgDiffDialog.__appendText">__appendText</a></td>
-<td>Private method to append text to the end of the contents pane.</td>
-</tr><tr>
-<td><a href="#HgDiffDialog.__extractFileName">__extractFileName</a></td>
-<td>Private method to extract the file name out of a file separator line.</td>
-</tr><tr>
-<td><a href="#HgDiffDialog.__finish">__finish</a></td>
-<td>Private slot called when the process finished or the user pressed the button.</td>
-</tr><tr>
-<td><a href="#HgDiffDialog.__getVersionArg">__getVersionArg</a></td>
-<td>Private method to get a hg revision argument for the given revision.</td>
-</tr><tr>
-<td><a href="#HgDiffDialog.__procFinished">__procFinished</a></td>
+<td><a href="#HgDiffDialog.__generatorFinished">__generatorFinished</a></td>
 <td>Private slot connected to the finished signal.</td>
 </tr><tr>
-<td><a href="#HgDiffDialog.__processFileLine">__processFileLine</a></td>
-<td>Private slot to process a line giving the old/new file.</td>
-</tr><tr>
-<td><a href="#HgDiffDialog.__processOutputLine">__processOutputLine</a></td>
-<td>Private method to process the lines of output.</td>
-</tr><tr>
-<td><a href="#HgDiffDialog.__readStderr">__readStderr</a></td>
-<td>Private slot to handle the readyReadStandardError signal.</td>
-</tr><tr>
-<td><a href="#HgDiffDialog.__readStdout">__readStdout</a></td>
-<td>Private slot to handle the readyReadStandardOutput signal.</td>
-</tr><tr>
-<td><a href="#HgDiffDialog.__showError">__showError</a></td>
-<td>Private slot to show some error.</td>
-</tr><tr>
 <td><a href="#HgDiffDialog.closeEvent">closeEvent</a></td>
 <td>Protected slot implementing a close event handler.</td>
 </tr><tr>
-<td><a href="#HgDiffDialog.keyPressEvent">keyPressEvent</a></td>
-<td>Protected slot to handle a key press event.</td>
-</tr><tr>
 <td><a href="#HgDiffDialog.on_buttonBox_clicked">on_buttonBox_clicked</a></td>
 <td>Private slot called by a button of the button box clicked.</td>
 </tr><tr>
 <td><a href="#HgDiffDialog.on_filesCombo_activated">on_filesCombo_activated</a></td>
 <td>Private slot to handle the selection of a file.</td>
 </tr><tr>
-<td><a href="#HgDiffDialog.on_input_returnPressed">on_input_returnPressed</a></td>
-<td>Private slot to handle the press of the return key in the input field.</td>
-</tr><tr>
-<td><a href="#HgDiffDialog.on_passwordCheckBox_toggled">on_passwordCheckBox_toggled</a></td>
-<td>Private slot to handle the password checkbox toggled.</td>
-</tr><tr>
 <td><a href="#HgDiffDialog.on_refreshButton_clicked">on_refreshButton_clicked</a></td>
 <td>Private slot to refresh the display.</td>
 </tr><tr>
 <td><a href="#HgDiffDialog.on_saveButton_clicked">on_saveButton_clicked</a></td>
 <td>Private slot to handle the Save button press.</td>
 </tr><tr>
-<td><a href="#HgDiffDialog.on_sendButton_clicked">on_sendButton_clicked</a></td>
-<td>Private slot to send the input to the subversion process.</td>
-</tr><tr>
 <td><a href="#HgDiffDialog.start">start</a></td>
 <td>Public slot to start the hg diff command.</td>
 </tr>
@@ -139,112 +100,12 @@
 <dd>
 parent widget (QWidget)
 </dd>
-</dl><a NAME="HgDiffDialog.__appendText" ID="HgDiffDialog.__appendText"></a>
-<h4>HgDiffDialog.__appendText</h4>
-<b>__appendText</b>(<i>txt</i>)
-<p>
-        Private method to append text to the end of the contents pane.
-</p><dl>
-<dt><i>txt</i></dt>
-<dd>
-text to insert (string)
-</dd>
-</dl><a NAME="HgDiffDialog.__extractFileName" ID="HgDiffDialog.__extractFileName"></a>
-<h4>HgDiffDialog.__extractFileName</h4>
-<b>__extractFileName</b>(<i>line</i>)
-<p>
-        Private method to extract the file name out of a file separator line.
-</p><dl>
-<dt><i>line</i></dt>
-<dd>
-line to be processed (string)
-</dd>
-</dl><dl>
-<dt>Returns:</dt>
-<dd>
-extracted file name (string)
-</dd>
-</dl><a NAME="HgDiffDialog.__finish" ID="HgDiffDialog.__finish"></a>
-<h4>HgDiffDialog.__finish</h4>
-<b>__finish</b>(<i></i>)
-<p>
-        Private slot called when the process finished or the user pressed
-        the button.
-</p><a NAME="HgDiffDialog.__getVersionArg" ID="HgDiffDialog.__getVersionArg"></a>
-<h4>HgDiffDialog.__getVersionArg</h4>
-<b>__getVersionArg</b>(<i>version</i>)
-<p>
-        Private method to get a hg revision argument for the given revision.
-</p><dl>
-<dt><i>version</i></dt>
-<dd>
-revision (integer or string)
-</dd>
-</dl><dl>
-<dt>Returns:</dt>
-<dd>
-version argument (string)
-</dd>
-</dl><a NAME="HgDiffDialog.__procFinished" ID="HgDiffDialog.__procFinished"></a>
-<h4>HgDiffDialog.__procFinished</h4>
-<b>__procFinished</b>(<i>exitCode, exitStatus</i>)
+</dl><a NAME="HgDiffDialog.__generatorFinished" ID="HgDiffDialog.__generatorFinished"></a>
+<h4>HgDiffDialog.__generatorFinished</h4>
+<b>__generatorFinished</b>(<i></i>)
 <p>
         Private slot connected to the finished signal.
-</p><dl>
-<dt><i>exitCode</i></dt>
-<dd>
-exit code of the process (integer)
-</dd><dt><i>exitStatus</i></dt>
-<dd>
-exit status of the process (QProcess.ExitStatus)
-</dd>
-</dl><a NAME="HgDiffDialog.__processFileLine" ID="HgDiffDialog.__processFileLine"></a>
-<h4>HgDiffDialog.__processFileLine</h4>
-<b>__processFileLine</b>(<i>line</i>)
-<p>
-        Private slot to process a line giving the old/new file.
-</p><dl>
-<dt><i>line</i></dt>
-<dd>
-line to be processed (string)
-</dd>
-</dl><a NAME="HgDiffDialog.__processOutputLine" ID="HgDiffDialog.__processOutputLine"></a>
-<h4>HgDiffDialog.__processOutputLine</h4>
-<b>__processOutputLine</b>(<i>line</i>)
-<p>
-        Private method to process the lines of output.
-</p><dl>
-<dt><i>line</i></dt>
-<dd>
-output line to be processed (string)
-</dd>
-</dl><a NAME="HgDiffDialog.__readStderr" ID="HgDiffDialog.__readStderr"></a>
-<h4>HgDiffDialog.__readStderr</h4>
-<b>__readStderr</b>(<i></i>)
-<p>
-        Private slot to handle the readyReadStandardError signal.
-</p><p>
-        It reads the error output of the process and inserts it into the
-        error pane.
-</p><a NAME="HgDiffDialog.__readStdout" ID="HgDiffDialog.__readStdout"></a>
-<h4>HgDiffDialog.__readStdout</h4>
-<b>__readStdout</b>(<i></i>)
-<p>
-        Private slot to handle the readyReadStandardOutput signal.
-</p><p>
-        It reads the output of the process, formats it and inserts it into
-        the contents pane.
-</p><a NAME="HgDiffDialog.__showError" ID="HgDiffDialog.__showError"></a>
-<h4>HgDiffDialog.__showError</h4>
-<b>__showError</b>(<i>out</i>)
-<p>
-        Private slot to show some error.
-</p><dl>
-<dt><i>out</i></dt>
-<dd>
-error to be shown (string)
-</dd>
-</dl><a NAME="HgDiffDialog.closeEvent" ID="HgDiffDialog.closeEvent"></a>
+</p><a NAME="HgDiffDialog.closeEvent" ID="HgDiffDialog.closeEvent"></a>
 <h4>HgDiffDialog.closeEvent</h4>
 <b>closeEvent</b>(<i>e</i>)
 <p>
@@ -254,16 +115,6 @@
 <dd>
 close event (QCloseEvent)
 </dd>
-</dl><a NAME="HgDiffDialog.keyPressEvent" ID="HgDiffDialog.keyPressEvent"></a>
-<h4>HgDiffDialog.keyPressEvent</h4>
-<b>keyPressEvent</b>(<i>evt</i>)
-<p>
-        Protected slot to handle a key press event.
-</p><dl>
-<dt><i>evt</i></dt>
-<dd>
-the key press event (QKeyEvent)
-</dd>
 </dl><a NAME="HgDiffDialog.on_buttonBox_clicked" ID="HgDiffDialog.on_buttonBox_clicked"></a>
 <h4>HgDiffDialog.on_buttonBox_clicked</h4>
 <b>on_buttonBox_clicked</b>(<i>button</i>)
@@ -284,21 +135,6 @@
 <dd>
 activated row (integer)
 </dd>
-</dl><a NAME="HgDiffDialog.on_input_returnPressed" ID="HgDiffDialog.on_input_returnPressed"></a>
-<h4>HgDiffDialog.on_input_returnPressed</h4>
-<b>on_input_returnPressed</b>(<i></i>)
-<p>
-        Private slot to handle the press of the return key in the input field.
-</p><a NAME="HgDiffDialog.on_passwordCheckBox_toggled" ID="HgDiffDialog.on_passwordCheckBox_toggled"></a>
-<h4>HgDiffDialog.on_passwordCheckBox_toggled</h4>
-<b>on_passwordCheckBox_toggled</b>(<i>isOn</i>)
-<p>
-        Private slot to handle the password checkbox toggled.
-</p><dl>
-<dt><i>isOn</i></dt>
-<dd>
-flag indicating the status of the check box (boolean)
-</dd>
 </dl><a NAME="HgDiffDialog.on_refreshButton_clicked" ID="HgDiffDialog.on_refreshButton_clicked"></a>
 <h4>HgDiffDialog.on_refreshButton_clicked</h4>
 <b>on_refreshButton_clicked</b>(<i></i>)
@@ -312,11 +148,6 @@
 </p><p>
         It saves the diff shown in the dialog to a file in the local
         filesystem.
-</p><a NAME="HgDiffDialog.on_sendButton_clicked" ID="HgDiffDialog.on_sendButton_clicked"></a>
-<h4>HgDiffDialog.on_sendButton_clicked</h4>
-<b>on_sendButton_clicked</b>(<i></i>)
-<p>
-        Private slot to send the input to the subversion process.
 </p><a NAME="HgDiffDialog.start" ID="HgDiffDialog.start"></a>
 <h4>HgDiffDialog.start</h4>
 <b>start</b>(<i>fn, versions=None, bundle=None, qdiff=False, refreshable=False</i>)
--- a/Documentation/Source/index-eric6.Plugins.VcsPlugins.vcsMercurial.html	Tue Feb 24 18:31:14 2015 +0100
+++ b/Documentation/Source/index-eric6.Plugins.VcsPlugins.vcsMercurial.html	Tue Feb 24 18:55:07 2015 +0100
@@ -119,6 +119,9 @@
 <td><a href="eric6.Plugins.VcsPlugins.vcsMercurial.HgDiffDialog.html">HgDiffDialog</a></td>
 <td>Module implementing a dialog to show the output of the hg diff command process.</td>
 </tr><tr>
+<td><a href="eric6.Plugins.VcsPlugins.vcsMercurial.HgDiffGenerator.html">HgDiffGenerator</a></td>
+<td>Module implementing a class to generate the output of the hg diff command.</td>
+</tr><tr>
 <td><a href="eric6.Plugins.VcsPlugins.vcsMercurial.HgDiffHighlighter.html">HgDiffHighlighter</a></td>
 <td>Module implementing a syntax highlighter for unified and context diff outputs.</td>
 </tr><tr>
--- a/Plugins/VcsPlugins/vcsMercurial/HgDiffDialog.py	Tue Feb 24 18:31:14 2015 +0100
+++ b/Plugins/VcsPlugins/vcsMercurial/HgDiffDialog.py	Tue Feb 24 18:55:07 2015 +0100
@@ -13,17 +13,16 @@
 except NameError:
     pass
 
-import os
-
-from PyQt5.QtCore import pyqtSlot, QProcess, QTimer, QFileInfo, Qt
+from PyQt5.QtCore import pyqtSlot, QFileInfo, Qt
 from PyQt5.QtGui import QTextCursor, QCursor
-from PyQt5.QtWidgets import QWidget, QDialogButtonBox, QLineEdit, QApplication
+from PyQt5.QtWidgets import QWidget, QDialogButtonBox, QApplication
 
 from E5Gui import E5MessageBox, E5FileDialog
 from E5Gui.E5Application import e5App
 
 from .Ui_HgDiffDialog import Ui_HgDiffDialog
 from .HgDiffHighlighter import HgDiffHighlighter
+from .HgDiffGenerator import HgDiffGenerator
 
 import Utilities
 import Preferences
@@ -54,19 +53,14 @@
         
         self.searchWidget.attachTextEdit(self.contents)
         
-        self.process = QProcess()
-        self.vcs = vcs
-        self.__hgClient = self.vcs.getClient()
-        
         font = Preferences.getEditorOtherFonts("MonospacedFont")
         self.contents.setFontFamily(font.family())
         self.contents.setFontPointSize(font.pointSize())
         
         self.highlighter = HgDiffHighlighter(self.contents.document())
         
-        self.process.finished.connect(self.__procFinished)
-        self.process.readyReadStandardOutput.connect(self.__readStdout)
-        self.process.readyReadStandardError.connect(self.__readStderr)
+        self.__diffGenerator = HgDiffGenerator(vcs, self)
+        self.__diffGenerator.finished.connect(self.__generatorFinished)
     
     def closeEvent(self, e):
         """
@@ -74,30 +68,9 @@
         
         @param e close event (QCloseEvent)
         """
-        if self.__hgClient:
-            if self.__hgClient.isExecuting():
-                self.__hgClient.cancel()
-        else:
-            if self.process is not None and \
-               self.process.state() != QProcess.NotRunning:
-                self.process.terminate()
-                QTimer.singleShot(2000, self.process.kill)
-                self.process.waitForFinished(3000)
-        
+        self.__diffGenerator.stopProcess()
         e.accept()
     
-    def __getVersionArg(self, version):
-        """
-        Private method to get a hg revision argument for the given revision.
-        
-        @param version revision (integer or string)
-        @return version argument (string)
-        """
-        if version == "WORKING":
-            return None
-        else:
-            return str(version)
-    
     def start(self, fn, versions=None, bundle=None, qdiff=False,
               refreshable=False):
         """
@@ -113,126 +86,50 @@
         self.refreshButton.setVisible(refreshable)
         
         self.errorGroup.hide()
-        self.inputGroup.show()
-        self.inputGroup.setEnabled(True)
-        self.intercept = False
         self.filename = fn
         
         self.contents.clear()
-        self.paras = 0
-        
         self.filesCombo.clear()
         
         if qdiff:
-            args = self.vcs.initCommand("qdiff")
             self.setWindowTitle(self.tr("Patch Contents"))
-        else:
-            args = self.vcs.initCommand("diff")
-            
-            if self.vcs.hasSubrepositories():
-                args.append("--subrepos")
-            
-            if bundle:
-                args.append('--repository')
-                args.append(bundle)
-            elif self.vcs.bundleFile and os.path.exists(self.vcs.bundleFile):
-                args.append('--repository')
-                args.append(self.vcs.bundleFile)
-            
-            if versions is not None:
-                self.raise_()
-                self.activateWindow()
-                
-                rev1 = self.__getVersionArg(versions[0])
-                rev2 = None
-                if len(versions) == 2:
-                    rev2 = self.__getVersionArg(versions[1])
-                
-                if rev1 is not None or rev2 is not None:
-                    args.append('-r')
-                    if rev1 is not None and rev2 is not None:
-                        args.append('{0}:{1}'.format(rev1, rev2))
-                    elif rev2 is None:
-                        args.append(rev1)
-                    elif rev1 is None:
-                        args.append(':{0}'.format(rev2))
         
-        if isinstance(fn, list):
-            dname, fnames = self.vcs.splitPathList(fn)
-            self.vcs.addArguments(args, fn)
-        else:
-            dname, fname = self.vcs.splitPath(fn)
-            args.append(fn)
-        
-        self.__oldFile = ""
-        self.__oldFileLine = -1
-        self.__fileSeparators = []
+        self.raise_()
+        self.activateWindow()
         
         QApplication.setOverrideCursor(QCursor(Qt.WaitCursor))
-        if self.__hgClient:
-            self.inputGroup.setEnabled(False)
-            self.inputGroup.hide()
-            
-            out, err = self.__hgClient.runcommand(args)
-            
-            if err:
-                self.__showError(err)
-            if out:
-                for line in out.splitlines(True):
-                    self.__processOutputLine(line)
-                    if self.__hgClient.wasCanceled():
-                        break
-            
-            self.__finish()
-        else:
-            # find the root of the repo
-            repodir = dname
-            while not os.path.isdir(os.path.join(repodir, self.vcs.adminDir)):
-                repodir = os.path.dirname(repodir)
-                if os.path.splitdrive(repodir)[1] == os.sep:
-                    return
-            
-            self.process.kill()
-            
-            self.process.setWorkingDirectory(repodir)
-            
-            self.process.start('hg', args)
-            procStarted = self.process.waitForStarted(5000)
-            if not procStarted:
-                QApplication.restoreOverrideCursor()
-                self.inputGroup.setEnabled(False)
-                self.inputGroup.hide()
-                E5MessageBox.critical(
-                    self,
-                    self.tr('Process Generation Error'),
-                    self.tr(
-                        'The process {0} could not be started. '
-                        'Ensure, that it is in the search path.'
-                    ).format('hg'))
+        procStarted = self.__diffGenerator.start(
+            fn, versions=versions, bundle=bundle, qdiff=qdiff)
+        if not procStarted:
+            E5MessageBox.critical(
+                self,
+                self.tr('Process Generation Error'),
+                self.tr(
+                    'The process {0} could not be started. '
+                    'Ensure, that it is in the search path.'
+                ).format('hg'))
     
-    def __procFinished(self, exitCode, exitStatus):
+    def __generatorFinished(self):
         """
         Private slot connected to the finished signal.
-        
-        @param exitCode exit code of the process (integer)
-        @param exitStatus exit status of the process (QProcess.ExitStatus)
-        """
-        self.__finish()
-    
-    def __finish(self):
-        """
-        Private slot called when the process finished or the user pressed
-        the button.
         """
         QApplication.restoreOverrideCursor()
-        self.inputGroup.setEnabled(False)
-        self.inputGroup.hide()
         self.refreshButton.setEnabled(True)
         
-        if self.paras == 0:
-            self.contents.setPlainText(self.tr('There is no difference.'))
+        diff, errors, fileSeparators = self.__diffGenerator.getResult()
         
-        self.buttonBox.button(QDialogButtonBox.Save).setEnabled(self.paras > 0)
+        if diff:
+            self.contents.setPlainText("".join(diff))
+        else:
+            self.contents.setPlainText(
+                self.tr('There is no difference.'))
+        
+        if errors:
+            self.errorGroup.show()
+            self.errors.setPlainText("".join(errors))
+            self.errors.ensureCursorVisible()
+        
+        self.buttonBox.button(QDialogButtonBox.Save).setEnabled(bool(diff))
         self.buttonBox.button(QDialogButtonBox.Close).setEnabled(True)
         self.buttonBox.button(QDialogButtonBox.Close).setDefault(True)
         self.buttonBox.button(QDialogButtonBox.Close).setFocus(
@@ -245,7 +142,7 @@
         
         self.filesCombo.addItem(self.tr("<Start>"), 0)
         self.filesCombo.addItem(self.tr("<End>"), -1)
-        for oldFile, newFile, pos in sorted(self.__fileSeparators):
+        for oldFile, newFile, pos in sorted(fileSeparators):
             if not oldFile:
                 self.filesCombo.addItem(newFile, pos)
             elif oldFile != newFile:
@@ -254,99 +151,6 @@
             else:
                 self.filesCombo.addItem(oldFile, pos)
     
-    def __appendText(self, txt):
-        """
-        Private method to append text to the end of the contents pane.
-        
-        @param txt text to insert (string)
-        """
-        tc = self.contents.textCursor()
-        tc.movePosition(QTextCursor.End)
-        self.contents.setTextCursor(tc)
-        self.contents.insertPlainText(txt)
-    
-    def __extractFileName(self, line):
-        """
-        Private method to extract the file name out of a file separator line.
-        
-        @param line line to be processed (string)
-        @return extracted file name (string)
-        """
-        f = line.split(None, 1)[1]
-        f = f.rsplit(None, 6)[0]
-        if f == "/dev/null":
-            f = "__NULL__"
-        else:
-            f = f.split("/", 1)[1]
-        return f
-    
-    def __processFileLine(self, line):
-        """
-        Private slot to process a line giving the old/new file.
-        
-        @param line line to be processed (string)
-        """
-        if line.startswith('---'):
-            self.__oldFileLine = self.paras
-            self.__oldFile = self.__extractFileName(line)
-        else:
-            newFile = self.__extractFileName(line)
-            if self.__oldFile == "__NULL__":
-                self.__fileSeparators.append(
-                    (newFile, newFile, self.__oldFileLine))
-            else:
-                self.__fileSeparators.append(
-                    (self.__oldFile, newFile, self.__oldFileLine))
-    
-    def __processOutputLine(self, line):
-        """
-        Private method to process the lines of output.
-        
-        @param line output line to be processed (string)
-        """
-        if line.startswith("--- ") or \
-           line.startswith("+++ "):
-            self.__processFileLine(line)
-        
-        self.__appendText(line)
-        self.paras += 1
-    
-    def __readStdout(self):
-        """
-        Private slot to handle the readyReadStandardOutput signal.
-        
-        It reads the output of the process, formats it and inserts it into
-        the contents pane.
-        """
-        self.process.setReadChannel(QProcess.StandardOutput)
-        
-        while self.process.canReadLine():
-            line = str(self.process.readLine(), self.vcs.getEncoding(),
-                       'replace')
-            self.__processOutputLine(line)
-    
-    def __readStderr(self):
-        """
-        Private slot to handle the readyReadStandardError signal.
-        
-        It reads the error output of the process and inserts it into the
-        error pane.
-        """
-        if self.process is not None:
-            s = str(self.process.readAllStandardError(),
-                    self.vcs.getEncoding(), 'replace')
-            self.__showError(s)
-    
-    def __showError(self, out):
-        """
-        Private slot to show some error.
-        
-        @param out error to be shown (string)
-        """
-        self.errorGroup.show()
-        self.errors.insertPlainText(out)
-        self.errors.ensureCursorVisible()
-    
     def on_buttonBox_clicked(self, button):
         """
         Private slot called by a button of the button box clicked.
@@ -463,53 +267,3 @@
         self.refreshButton.setEnabled(False)
         
         self.start(self.filename, refreshable=True)
-    
-    def on_passwordCheckBox_toggled(self, isOn):
-        """
-        Private slot to handle the password checkbox toggled.
-        
-        @param isOn flag indicating the status of the check box (boolean)
-        """
-        if isOn:
-            self.input.setEchoMode(QLineEdit.Password)
-        else:
-            self.input.setEchoMode(QLineEdit.Normal)
-    
-    @pyqtSlot()
-    def on_sendButton_clicked(self):
-        """
-        Private slot to send the input to the subversion process.
-        """
-        input = self.input.text()
-        input += os.linesep
-        
-        if self.passwordCheckBox.isChecked():
-            self.errors.insertPlainText(os.linesep)
-            self.errors.ensureCursorVisible()
-        else:
-            self.errors.insertPlainText(input)
-            self.errors.ensureCursorVisible()
-        
-        self.process.write(input)
-        
-        self.passwordCheckBox.setChecked(False)
-        self.input.clear()
-    
-    def on_input_returnPressed(self):
-        """
-        Private slot to handle the press of the return key in the input field.
-        """
-        self.intercept = True
-        self.on_sendButton_clicked()
-    
-    def keyPressEvent(self, evt):
-        """
-        Protected slot to handle a key press event.
-        
-        @param evt the key press event (QKeyEvent)
-        """
-        if self.intercept:
-            self.intercept = False
-            evt.accept()
-            return
-        super(HgDiffDialog, self).keyPressEvent(evt)
--- a/Plugins/VcsPlugins/vcsMercurial/HgDiffDialog.ui	Tue Feb 24 18:31:14 2015 +0100
+++ b/Plugins/VcsPlugins/vcsMercurial/HgDiffDialog.ui	Tue Feb 24 18:55:07 2015 +0100
@@ -84,64 +84,6 @@
     </widget>
    </item>
    <item>
-    <widget class="QGroupBox" name="inputGroup">
-     <property name="title">
-      <string>Input</string>
-     </property>
-     <layout class="QGridLayout">
-      <item row="1" column="1">
-       <spacer>
-        <property name="orientation">
-         <enum>Qt::Horizontal</enum>
-        </property>
-        <property name="sizeType">
-         <enum>QSizePolicy::Expanding</enum>
-        </property>
-        <property name="sizeHint" stdset="0">
-         <size>
-          <width>327</width>
-          <height>29</height>
-         </size>
-        </property>
-       </spacer>
-      </item>
-      <item row="1" column="2">
-       <widget class="QPushButton" name="sendButton">
-        <property name="toolTip">
-         <string>Press to send the input to the hg process</string>
-        </property>
-        <property name="text">
-         <string>&amp;Send</string>
-        </property>
-        <property name="shortcut">
-         <string>Alt+S</string>
-        </property>
-       </widget>
-      </item>
-      <item row="0" column="0" colspan="3">
-       <widget class="QLineEdit" name="input">
-        <property name="toolTip">
-         <string>Enter data to be sent to the hg process</string>
-        </property>
-       </widget>
-      </item>
-      <item row="1" column="0">
-       <widget class="QCheckBox" name="passwordCheckBox">
-        <property name="toolTip">
-         <string>Select to switch the input field to password mode</string>
-        </property>
-        <property name="text">
-         <string>&amp;Password Mode</string>
-        </property>
-        <property name="shortcut">
-         <string>Alt+P</string>
-        </property>
-       </widget>
-      </item>
-     </layout>
-    </widget>
-   </item>
-   <item>
     <widget class="QDialogButtonBox" name="buttonBox">
      <property name="orientation">
       <enum>Qt::Horizontal</enum>
@@ -166,9 +108,6 @@
   <tabstop>searchWidget</tabstop>
   <tabstop>contents</tabstop>
   <tabstop>errors</tabstop>
-  <tabstop>input</tabstop>
-  <tabstop>passwordCheckBox</tabstop>
-  <tabstop>sendButton</tabstop>
  </tabstops>
  <resources/>
  <connections>
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/Plugins/VcsPlugins/vcsMercurial/HgDiffGenerator.py	Tue Feb 24 18:55:07 2015 +0100
@@ -0,0 +1,245 @@
+# -*- coding: utf-8 -*-
+
+# Copyright (c) 2015 Detlev Offenbach <detlev@die-offenbachs.de>
+#
+
+"""
+Module implementing a class to generate the output of the hg diff command.
+"""
+
+from __future__ import unicode_literals
+try:
+    str = unicode
+except NameError:
+    pass
+
+import os
+
+from PyQt5.QtCore import pyqtSignal, QProcess, QTimer, QObject
+
+
+class HgDiffGenerator(QObject):
+    """
+    Class implementing the generation of output of the hg diff command.
+    
+    @signal finished() emitted when all processes have finished
+    """
+    finished = pyqtSignal()
+    
+    def __init__(self, vcs, parent=None):
+        """
+        Constructor
+        
+        @param vcs reference to the vcs object
+        @param parent parent widget (QWidget)
+        """
+        super(HgDiffGenerator, self).__init__(parent)
+        
+        self.vcs = vcs
+        
+        self.__hgClient = self.vcs.getClient()
+        if self.__hgClient:
+            self.process = None
+        else:
+            self.process = QProcess()
+            self.process.finished.connect(self.__finish)
+            self.process.readyReadStandardOutput.connect(self.__readStdout)
+            self.process.readyReadStandardError.connect(self.__readStderr)
+    
+    def stopProcess(self):
+        """
+        Public slot to stop the diff process.
+        """
+        if self.__hgClient:
+            if self.__hgClient.isExecuting():
+                self.__hgClient.cancel()
+        else:
+            if self.process is not None and \
+               self.process.state() != QProcess.NotRunning:
+                self.process.terminate()
+                QTimer.singleShot(2000, self.process.kill)
+                self.process.waitForFinished(3000)
+    
+    def __getVersionArg(self, version):
+        """
+        Private method to get a hg revision argument for the given revision.
+        
+        @param version revision (integer or string)
+        @return version argument (string)
+        """
+        if version == "WORKING":
+            return None
+        else:
+            return str(version)
+    
+    def start(self, fn, versions=None, bundle=None, qdiff=False):
+        """
+        Public slot to start the hg diff command.
+        
+        @param fn filename to be diffed (string)
+        @keyparam versions list of versions to be diffed (list of up to
+            2 strings or None)
+        @keyparam bundle name of a bundle file (string)
+        @keyparam qdiff flag indicating qdiff command shall be used (boolean)
+        """
+        if qdiff:
+            args = self.vcs.initCommand("qdiff")
+        else:
+            args = self.vcs.initCommand("diff")
+            
+            if self.vcs.hasSubrepositories():
+                args.append("--subrepos")
+            
+            if bundle:
+                args.append('--repository')
+                args.append(bundle)
+            elif self.vcs.bundleFile and os.path.exists(self.vcs.bundleFile):
+                args.append('--repository')
+                args.append(self.vcs.bundleFile)
+            
+            if versions is not None:
+                rev1 = self.__getVersionArg(versions[0])
+                rev2 = None
+                if len(versions) == 2:
+                    rev2 = self.__getVersionArg(versions[1])
+                
+                if rev1 is not None or rev2 is not None:
+                    args.append('-r')
+                    if rev1 is not None and rev2 is not None:
+                        args.append('{0}:{1}'.format(rev1, rev2))
+                    elif rev2 is None:
+                        args.append(rev1)
+                    elif rev1 is None:
+                        args.append(':{0}'.format(rev2))
+        
+        if isinstance(fn, list):
+            dname, fnames = self.vcs.splitPathList(fn)
+            self.vcs.addArguments(args, fn)
+        else:
+            dname, fname = self.vcs.splitPath(fn)
+            args.append(fn)
+        
+        self.__oldFile = ""
+        self.__oldFileLine = -1
+        self.__fileSeparators = []
+        self.__output = []
+        self.__errors = []
+        
+        if self.__hgClient:
+            out, err = self.__hgClient.runcommand(args)
+            
+            if err:
+                self.__errors = err.splitlines(True)
+            
+            if out:
+                for line in out.splitlines(True):
+                    self.__processOutputLine(line)
+                    if self.__hgClient.wasCanceled():
+                        break
+            
+            self.__finish()
+        else:
+            # find the root of the repo
+            repodir = dname
+            while not os.path.isdir(os.path.join(repodir, self.vcs.adminDir)):
+                repodir = os.path.dirname(repodir)
+                if os.path.splitdrive(repodir)[1] == os.sep:
+                    return
+            
+            self.process.kill()
+            self.process.setWorkingDirectory(repodir)
+            
+            self.process.start('hg', args)
+            procStarted = self.process.waitForStarted(5000)
+            if not procStarted:
+                return False
+        
+        return True
+    
+    def __finish(self):
+        """
+        Private slot called when the process finished or the user pressed
+        the button.
+        """
+        self.finished.emit()
+    
+    def getResult(self):
+        """
+        Public method to return the result data.
+        
+        @return tuple of lists of string containing lines of the diff, the
+            list of errors and a list of tuples of filenames and the line
+            into the diff output.
+        """
+        return (self.__output, self.__errors, self.__fileSeparators)
+    
+    def __extractFileName(self, line):
+        """
+        Private method to extract the file name out of a file separator line.
+        
+        @param line line to be processed (string)
+        @return extracted file name (string)
+        """
+        f = line.split(None, 1)[1]
+        f = f.rsplit(None, 6)[0]
+        if f == "/dev/null":
+            f = "__NULL__"
+        else:
+            f = f.split("/", 1)[1]
+        return f
+    
+    def __processFileLine(self, line):
+        """
+        Private slot to process a line giving the old/new file.
+        
+        @param line line to be processed (string)
+        """
+        if line.startswith('---'):
+            self.__oldFileLine = len(self.__output)
+            self.__oldFile = self.__extractFileName(line)
+        else:
+            newFile = self.__extractFileName(line)
+            if self.__oldFile == "__NULL__":
+                self.__fileSeparators.append(
+                    (newFile, newFile, self.__oldFileLine))
+            else:
+                self.__fileSeparators.append(
+                    (self.__oldFile, newFile, self.__oldFileLine))
+    
+    def __processOutputLine(self, line):
+        """
+        Private method to process the lines of output.
+        
+        @param line output line to be processed (string)
+        """
+        if line.startswith("--- ") or \
+           line.startswith("+++ "):
+            self.__processFileLine(line)
+        
+        self.__output.append(line)
+    
+    def __readStdout(self):
+        """
+        Private slot to handle the readyReadStandardOutput signal.
+        
+        It reads the output of the process, formats it and inserts it into
+        the contents pane.
+        """
+        self.process.setReadChannel(QProcess.StandardOutput)
+        
+        while self.process.canReadLine():
+            line = str(self.process.readLine(), self.vcs.getEncoding(),
+                       'replace')
+            self.__processOutputLine(line)
+    
+    def __readStderr(self):
+        """
+        Private slot to handle the readyReadStandardError signal.
+        
+        It reads the error output of the process and inserts it into the
+        error pane.
+        """
+        if self.process is not None:
+            s = str(self.process.readAllStandardError(),
+                    self.vcs.getEncoding(), 'replace')
+            self.__errors.append(s)
--- a/eric6.e4p	Tue Feb 24 18:31:14 2015 +0100
+++ b/eric6.e4p	Tue Feb 24 18:55:07 2015 +0100
@@ -1159,6 +1159,7 @@
     <Source>Plugins/VcsPlugins/vcsMercurial/HgDiffHighlighter.py</Source>
     <Source>Plugins/VcsPlugins/vcsSubversion/SvnDiffHighlighter.py</Source>
     <Source>Plugins/VcsPlugins/vcsPySvn/SvnDiffHighlighter.py</Source>
+    <Source>Plugins/VcsPlugins/vcsMercurial/HgDiffGenerator.py</Source>
   </Sources>
   <Forms>
     <Form>PyUnit/UnittestDialog.ui</Form>
--- a/i18n/eric6_cs.ts	Tue Feb 24 18:31:14 2015 +0100
+++ b/i18n/eric6_cs.ts	Tue Feb 24 18:55:07 2015 +0100
@@ -4103,7 +4103,7 @@
         <translation>Viewmanager</translation>
     </message>
     <message>
-        <location filename="../Preferences/ConfigurationDialog.py" line="567"/>
+        <location filename="../Preferences/ConfigurationDialog.py" line="568"/>
         <source>Configuration Page Error</source>
         <translation>Chyba na straně konfigurace</translation>
     </message>
@@ -4164,7 +4164,7 @@
         <translation></translation>
     </message>
     <message>
-        <location filename="../Preferences/ConfigurationDialog.py" line="567"/>
+        <location filename="../Preferences/ConfigurationDialog.py" line="568"/>
         <source>&lt;p&gt;The configuration page &lt;b&gt;{0}&lt;/b&gt; could not be loaded.&lt;/p&gt;</source>
         <translation>&lt;p&gt;Konfigurační stranu &lt;b&gt;{0}&lt;/b&gt; nelze načíst.&lt;/p&gt;</translation>
     </message>
@@ -20775,100 +20775,90 @@
     <message>
         <location filename="../Plugins/VcsPlugins/vcsMercurial/HgDiffDialog.ui" line="89"/>
         <source>Input</source>
-        <translation>Vstup</translation>
+        <translation type="obsolete">Vstup</translation>
     </message>
     <message>
         <location filename="../Plugins/VcsPlugins/vcsMercurial/HgDiffDialog.ui" line="111"/>
         <source>Press to send the input to the hg process</source>
-        <translation>Stisknutím odeslat vstup do hg procesu</translation>
+        <translation type="obsolete">Stisknutím odeslat vstup do hg procesu</translation>
     </message>
     <message>
         <location filename="../Plugins/VcsPlugins/vcsMercurial/HgDiffDialog.ui" line="114"/>
         <source>&amp;Send</source>
-        <translation>Ode&amp;slat</translation>
-    </message>
-    <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/HgDiffDialog.ui" line="117"/>
-        <source>Alt+S</source>
-        <translation></translation>
+        <translation type="obsolete">Ode&amp;slat</translation>
     </message>
     <message>
         <location filename="../Plugins/VcsPlugins/vcsMercurial/HgDiffDialog.ui" line="124"/>
         <source>Enter data to be sent to the hg process</source>
-        <translation>Zadejte data, která se odešlou do hg procesu</translation>
+        <translation type="obsolete">Zadejte data, která se odešlou do hg procesu</translation>
     </message>
     <message>
         <location filename="../Plugins/VcsPlugins/vcsMercurial/HgDiffDialog.ui" line="131"/>
         <source>Select to switch the input field to password mode</source>
-        <translation>Vybrat pro přepnutí vstupního pole do režimu hesla</translation>
+        <translation type="obsolete">Vybrat pro přepnutí vstupního pole do režimu hesla</translation>
     </message>
     <message>
         <location filename="../Plugins/VcsPlugins/vcsMercurial/HgDiffDialog.ui" line="134"/>
         <source>&amp;Password Mode</source>
-        <translation>Ty&amp;p heslo</translation>
-    </message>
-    <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/HgDiffDialog.ui" line="137"/>
-        <source>Alt+P</source>
-        <translation></translation>
-    </message>
-    <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/HgDiffDialog.py" line="206"/>
+        <translation type="obsolete">Ty&amp;p heslo</translation>
+    </message>
+    <message>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/HgDiffDialog.py" line="104"/>
         <source>Process Generation Error</source>
         <translation>Chyba v procesu generování</translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/HgDiffDialog.py" line="206"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/HgDiffDialog.py" line="104"/>
         <source>The process {0} could not be started. Ensure, that it is in the search path.</source>
         <translation>Proces {0} nelze spustit. Ověřte, že je umístěn v požadované cestě.</translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/HgDiffDialog.py" line="234"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/HgDiffDialog.py" line="124"/>
         <source>There is no difference.</source>
         <translation>Žádné rozdíly nebyly nalezeny.</translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/HgDiffDialog.py" line="449"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/HgDiffDialog.py" line="252"/>
         <source>Save Diff</source>
         <translation>Uložit Diff</translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/HgDiffDialog.py" line="416"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/HgDiffDialog.py" line="219"/>
         <source>Patch Files (*.diff)</source>
         <translation>Patch soubory (*.diff)</translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/HgDiffDialog.py" line="449"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/HgDiffDialog.py" line="252"/>
         <source>&lt;p&gt;The patch file &lt;b&gt;{0}&lt;/b&gt; could not be saved.&lt;br&gt;Reason: {1}&lt;/p&gt;</source>
         <translation>&lt;p&gt;Patch soubor &lt;b&gt;{0}&lt;/b&gt; nelze uložit.&lt;br /&gt;Důvod: {1}&lt;/p&gt;</translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/HgDiffDialog.py" line="433"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/HgDiffDialog.py" line="236"/>
         <source>&lt;p&gt;The patch file &lt;b&gt;{0}&lt;/b&gt; already exists. Overwrite it?&lt;/p&gt;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/HgDiffDialog.py" line="128"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/HgDiffDialog.py" line="95"/>
         <source>Patch Contents</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/HgDiffDialog.py" line="247"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/HgDiffDialog.py" line="143"/>
         <source>&lt;Start&gt;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/HgDiffDialog.py" line="248"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/HgDiffDialog.py" line="144"/>
         <source>&lt;End&gt;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/HgDiffDialog.py" line="47"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/HgDiffDialog.py" line="46"/>
         <source>Refresh</source>
         <translation type="unfinished">Obnovit</translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/HgDiffDialog.py" line="49"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/HgDiffDialog.py" line="48"/>
         <source>Press to refresh the display</source>
         <translation type="unfinished"></translation>
     </message>
@@ -50510,7 +50500,7 @@
 &lt;p&gt;Zobrazuje případná chybová hlášení ze subversion příkazu proplist.&lt;/p&gt;</translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsSubversion/SvnPropListDialog.py" line="152"/>
+        <location filename="../Plugins/VcsPlugins/vcsSubversion/SvnPropListDialog.py" line="151"/>
         <source>Process Generation Error</source>
         <translation>Chyba v procesu generování</translation>
     </message>
@@ -50525,7 +50515,7 @@
         <translation>Chyby</translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsSubversion/SvnPropListDialog.py" line="152"/>
+        <location filename="../Plugins/VcsPlugins/vcsSubversion/SvnPropListDialog.py" line="151"/>
         <source>The process {0} could not be started. Ensure, that it is in the search path.</source>
         <translation>Proces {0} nelze spustit. Ověřte, že je umístěn v požadované cestě.</translation>
     </message>
Binary file i18n/eric6_de.qm has changed
--- a/i18n/eric6_de.ts	Tue Feb 24 18:31:14 2015 +0100
+++ b/i18n/eric6_de.ts	Tue Feb 24 18:55:07 2015 +0100
@@ -1,6 +1,5 @@
 <?xml version="1.0" encoding="utf-8"?>
-<!DOCTYPE TS>
-<TS version="2.1" language="de">
+<!DOCTYPE TS><TS version="2.0" language="de" sourcelanguage="">
 <context>
     <name>AboutDialog</name>
     <message>
@@ -1919,8 +1918,8 @@
     </message>
     <message>
         <location filename="../Helpviewer/Bookmarks/BookmarksMenu.py" line="145"/>
-        <source>Open in New &amp;Tab	Ctrl+LMB</source>
-        <translation>In neuem &amp;Register öffnen	Strg+LMK</translation>
+        <source>Open in New &amp;Tab<byte value="x9"/>Ctrl+LMB</source>
+        <translation>In neuem &amp;Register öffnen<byte value="x9"/>Strg+LMK</translation>
     </message>
 </context>
 <context>
@@ -1988,8 +1987,8 @@
     </message>
     <message>
         <location filename="../Helpviewer/Bookmarks/BookmarksToolBar.py" line="93"/>
-        <source>Open in New &amp;Tab	Ctrl+LMB</source>
-        <translation>In neuem &amp;Register öffnen	Strg+LMK</translation>
+        <source>Open in New &amp;Tab<byte value="x9"/>Ctrl+LMB</source>
+        <translation>In neuem &amp;Register öffnen<byte value="x9"/>Strg+LMK</translation>
     </message>
 </context>
 <context>
@@ -4112,12 +4111,12 @@
         <translation>Ansichtenmanager</translation>
     </message>
     <message>
-        <location filename="../Preferences/ConfigurationDialog.py" line="567"/>
+        <location filename="../Preferences/ConfigurationDialog.py" line="568"/>
         <source>Configuration Page Error</source>
         <translation>Konfigurationsseitenfehler</translation>
     </message>
     <message>
-        <location filename="../Preferences/ConfigurationDialog.py" line="567"/>
+        <location filename="../Preferences/ConfigurationDialog.py" line="568"/>
         <source>&lt;p&gt;The configuration page &lt;b&gt;{0}&lt;/b&gt; could not be loaded.&lt;/p&gt;</source>
         <translation>&lt;p&gt;Die Konfigurationsseite &lt;b&gt;{0}&lt;/b&gt; konnte nicht geladen werden.&lt;/p&gt;</translation>
     </message>
@@ -15920,8 +15919,8 @@
     </message>
     <message>
         <location filename="../Helpviewer/HelpBrowserWV.py" line="1094"/>
-        <source>Open Link in New Tab	Ctrl+LMB</source>
-        <translation>Link in neuem Fenster öffnen	Strg+LMK</translation>
+        <source>Open Link in New Tab<byte value="x9"/>Ctrl+LMB</source>
+        <translation>Link in neuem Fenster öffnen<byte value="x9"/>Strg+LMK</translation>
     </message>
     <message>
         <location filename="../Helpviewer/HelpBrowserWV.py" line="1167"/>
@@ -20821,102 +20820,62 @@
         <translation>Fehler</translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/HgDiffDialog.ui" line="89"/>
-        <source>Input</source>
-        <translation>Eingabe</translation>
-    </message>
-    <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/HgDiffDialog.ui" line="111"/>
-        <source>Press to send the input to the hg process</source>
-        <translation>Drücken um die Eingabe an den hg-Prozess zu senden</translation>
-    </message>
-    <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/HgDiffDialog.ui" line="114"/>
-        <source>&amp;Send</source>
-        <translation>Sen&amp;den</translation>
-    </message>
-    <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/HgDiffDialog.ui" line="117"/>
-        <source>Alt+S</source>
-        <translation>Alt+D</translation>
-    </message>
-    <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/HgDiffDialog.ui" line="124"/>
-        <source>Enter data to be sent to the hg process</source>
-        <translation>Gib die Daten ein, die an den hg-Prozess geschickt werden sollen</translation>
-    </message>
-    <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/HgDiffDialog.ui" line="131"/>
-        <source>Select to switch the input field to password mode</source>
-        <translation>Anwählen, um den Kennwortmodus für das Eingabefeld auszuwählen</translation>
-    </message>
-    <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/HgDiffDialog.ui" line="134"/>
-        <source>&amp;Password Mode</source>
-        <translation>&amp;Kennwortmodus</translation>
-    </message>
-    <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/HgDiffDialog.ui" line="137"/>
-        <source>Alt+P</source>
-        <translation>Alt+P</translation>
-    </message>
-    <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/HgDiffDialog.py" line="206"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/HgDiffDialog.py" line="104"/>
         <source>Process Generation Error</source>
         <translation>Fehler beim Prozessstart</translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/HgDiffDialog.py" line="206"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/HgDiffDialog.py" line="104"/>
         <source>The process {0} could not be started. Ensure, that it is in the search path.</source>
         <translation>Der Prozess {0} konnte nicht gestartet werden. Stellen Sie sicher, dass er sich im Suchpfad befindet.</translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/HgDiffDialog.py" line="234"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/HgDiffDialog.py" line="124"/>
         <source>There is no difference.</source>
         <translation>Es gibt keinen Unterschied.</translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/HgDiffDialog.py" line="449"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/HgDiffDialog.py" line="252"/>
         <source>Save Diff</source>
         <translation>Diff speichern</translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/HgDiffDialog.py" line="416"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/HgDiffDialog.py" line="219"/>
         <source>Patch Files (*.diff)</source>
         <translation>Patchdateien (*.diff)</translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/HgDiffDialog.py" line="449"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/HgDiffDialog.py" line="252"/>
         <source>&lt;p&gt;The patch file &lt;b&gt;{0}&lt;/b&gt; could not be saved.&lt;br&gt;Reason: {1}&lt;/p&gt;</source>
         <translation>&lt;p&gt;Die Patchdatei &lt;b&gt;{0}&lt;/b&gt; konnte nicht gespeichert werden.&lt;br&gt;Grund: {1}&lt;/p&gt;</translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/HgDiffDialog.py" line="433"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/HgDiffDialog.py" line="236"/>
         <source>&lt;p&gt;The patch file &lt;b&gt;{0}&lt;/b&gt; already exists. Overwrite it?&lt;/p&gt;</source>
         <translation>&lt;p&gt;Die Patchdatei &lt;b&gt;{0}&lt;/b&gt; existiert bereits. Überschreiben?&lt;/p&gt;</translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/HgDiffDialog.py" line="128"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/HgDiffDialog.py" line="95"/>
         <source>Patch Contents</source>
         <translation>Patchinhalt</translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/HgDiffDialog.py" line="247"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/HgDiffDialog.py" line="143"/>
         <source>&lt;Start&gt;</source>
         <translation>&lt;Anfang&gt;</translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/HgDiffDialog.py" line="248"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/HgDiffDialog.py" line="144"/>
         <source>&lt;End&gt;</source>
         <translation>&lt;Ende&gt;</translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/HgDiffDialog.py" line="47"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/HgDiffDialog.py" line="46"/>
         <source>Refresh</source>
         <translation>Aktualisieren</translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/HgDiffDialog.py" line="49"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/HgDiffDialog.py" line="48"/>
         <source>Press to refresh the display</source>
         <translation>Drücken, um die Anzeige zu aktualisieren</translation>
     </message>
@@ -50679,7 +50638,7 @@
 &lt;p&gt;Dies zeigt mögliche Fehlermeldungen des subversion proplist-Befehls.&lt;/p&gt;</translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsSubversion/SvnPropListDialog.py" line="152"/>
+        <location filename="../Plugins/VcsPlugins/vcsSubversion/SvnPropListDialog.py" line="151"/>
         <source>Process Generation Error</source>
         <translation>Fehler beim Prozessstart</translation>
     </message>
@@ -50689,7 +50648,7 @@
         <translation>Keine</translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsSubversion/SvnPropListDialog.py" line="152"/>
+        <location filename="../Plugins/VcsPlugins/vcsSubversion/SvnPropListDialog.py" line="151"/>
         <source>The process {0} could not be started. Ensure, that it is in the search path.</source>
         <translation>Der Prozess {0} konnte nicht gestartet werden. Stellen Sie sicher, dass er sich im Suchpfad befindet.</translation>
     </message>
--- a/i18n/eric6_en.ts	Tue Feb 24 18:31:14 2015 +0100
+++ b/i18n/eric6_en.ts	Tue Feb 24 18:55:07 2015 +0100
@@ -4133,12 +4133,12 @@
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Preferences/ConfigurationDialog.py" line="567"/>
+        <location filename="../Preferences/ConfigurationDialog.py" line="568"/>
         <source>Configuration Page Error</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Preferences/ConfigurationDialog.py" line="567"/>
+        <location filename="../Preferences/ConfigurationDialog.py" line="568"/>
         <source>&lt;p&gt;The configuration page &lt;b&gt;{0}&lt;/b&gt; could not be loaded.&lt;/p&gt;</source>
         <translation type="unfinished"></translation>
     </message>
@@ -20703,102 +20703,62 @@
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/HgDiffDialog.ui" line="89"/>
-        <source>Input</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/HgDiffDialog.ui" line="111"/>
-        <source>Press to send the input to the hg process</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/HgDiffDialog.ui" line="114"/>
-        <source>&amp;Send</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/HgDiffDialog.ui" line="117"/>
-        <source>Alt+S</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/HgDiffDialog.ui" line="124"/>
-        <source>Enter data to be sent to the hg process</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/HgDiffDialog.ui" line="131"/>
-        <source>Select to switch the input field to password mode</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/HgDiffDialog.ui" line="134"/>
-        <source>&amp;Password Mode</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/HgDiffDialog.ui" line="137"/>
-        <source>Alt+P</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/HgDiffDialog.py" line="206"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/HgDiffDialog.py" line="104"/>
         <source>Process Generation Error</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/HgDiffDialog.py" line="206"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/HgDiffDialog.py" line="104"/>
         <source>The process {0} could not be started. Ensure, that it is in the search path.</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/HgDiffDialog.py" line="234"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/HgDiffDialog.py" line="124"/>
         <source>There is no difference.</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/HgDiffDialog.py" line="449"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/HgDiffDialog.py" line="252"/>
         <source>Save Diff</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/HgDiffDialog.py" line="416"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/HgDiffDialog.py" line="219"/>
         <source>Patch Files (*.diff)</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/HgDiffDialog.py" line="433"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/HgDiffDialog.py" line="236"/>
         <source>&lt;p&gt;The patch file &lt;b&gt;{0}&lt;/b&gt; already exists. Overwrite it?&lt;/p&gt;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/HgDiffDialog.py" line="449"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/HgDiffDialog.py" line="252"/>
         <source>&lt;p&gt;The patch file &lt;b&gt;{0}&lt;/b&gt; could not be saved.&lt;br&gt;Reason: {1}&lt;/p&gt;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/HgDiffDialog.py" line="128"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/HgDiffDialog.py" line="95"/>
         <source>Patch Contents</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/HgDiffDialog.py" line="247"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/HgDiffDialog.py" line="143"/>
         <source>&lt;Start&gt;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/HgDiffDialog.py" line="248"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/HgDiffDialog.py" line="144"/>
         <source>&lt;End&gt;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/HgDiffDialog.py" line="47"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/HgDiffDialog.py" line="46"/>
         <source>Refresh</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/HgDiffDialog.py" line="49"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/HgDiffDialog.py" line="48"/>
         <source>Press to refresh the display</source>
         <translation type="unfinished"></translation>
     </message>
@@ -50204,12 +50164,12 @@
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsSubversion/SvnPropListDialog.py" line="152"/>
+        <location filename="../Plugins/VcsPlugins/vcsSubversion/SvnPropListDialog.py" line="151"/>
         <source>Process Generation Error</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsSubversion/SvnPropListDialog.py" line="152"/>
+        <location filename="../Plugins/VcsPlugins/vcsSubversion/SvnPropListDialog.py" line="151"/>
         <source>The process {0} could not be started. Ensure, that it is in the search path.</source>
         <translation type="unfinished"></translation>
     </message>
Binary file i18n/eric6_es.qm has changed
--- a/i18n/eric6_es.ts	Tue Feb 24 18:31:14 2015 +0100
+++ b/i18n/eric6_es.ts	Tue Feb 24 18:55:07 2015 +0100
@@ -4109,7 +4109,7 @@
         <translation>Gestor de vistas</translation>
     </message>
     <message>
-        <location filename="../Preferences/ConfigurationDialog.py" line="567"/>
+        <location filename="../Preferences/ConfigurationDialog.py" line="568"/>
         <source>Configuration Page Error</source>
         <translation> Error de Configuración de Página</translation>
     </message>
@@ -4171,7 +4171,7 @@
         <translation>Python3</translation>
     </message>
     <message>
-        <location filename="../Preferences/ConfigurationDialog.py" line="567"/>
+        <location filename="../Preferences/ConfigurationDialog.py" line="568"/>
         <source>&lt;p&gt;The configuration page &lt;b&gt;{0}&lt;/b&gt; could not be loaded.&lt;/p&gt;</source>
         <translation>&lt;p&gt;La página de configuración  &lt;b&gt;{0}&lt;/b&gt; no puede ser cargada.&lt;/p&gt;</translation>
     </message>
@@ -7274,46 +7274,6 @@
         <translation>Filtro de Mensajes de Error</translation>
     </message>
     <message>
-        <location filename="../E5Gui/E5ErrorMessageFilterDialog.ui" line="40"/>
-        <source>Enter search term for message</source>
-        <translation type="obsolete">Introduzca término de búsqueda para mensaje</translation>
-    </message>
-    <message>
-        <location filename="../E5Gui/E5ErrorMessageFilterDialog.ui" line="77"/>
-        <source>Press to add filter to the list</source>
-        <translation type="obsolete">Pulsar para añadir el filtro a la lista</translation>
-    </message>
-    <message>
-        <location filename="../E5Gui/E5ErrorMessageFilterDialog.ui" line="80"/>
-        <source>&amp;Add...</source>
-        <translation type="obsolete">&amp;Añadir...</translation>
-    </message>
-    <message>
-        <location filename="../E5Gui/E5ErrorMessageFilterDialog.ui" line="97"/>
-        <source>Press to remove the selected entries</source>
-        <translation type="obsolete">Pulse para eliminar las entradas seleccionadas</translation>
-    </message>
-    <message>
-        <location filename="../E5Gui/E5ErrorMessageFilterDialog.ui" line="100"/>
-        <source>&amp;Remove</source>
-        <translation type="obsolete">&amp;Eliminar</translation>
-    </message>
-    <message>
-        <location filename="../E5Gui/E5ErrorMessageFilterDialog.ui" line="110"/>
-        <source>Press to remove all entries</source>
-        <translation type="obsolete">Pulsar para eliminar todas las entradas</translation>
-    </message>
-    <message>
-        <location filename="../E5Gui/E5ErrorMessageFilterDialog.ui" line="113"/>
-        <source>R&amp;emove All</source>
-        <translation type="obsolete">Eliminar &amp;Todas</translation>
-    </message>
-    <message>
-        <location filename="../E5Gui/E5ErrorMessageFilterDialog.py" line="51"/>
-        <source>Enter message filter to add to the list:</source>
-        <translation type="obsolete">Introducir filtro de mensaje para añadir a la lista:</translation>
-    </message>
-    <message>
         <location filename="../E5Gui/E5ErrorMessageFilterDialog.py" line="33"/>
         <source>&lt;b&gt;Error Message Filters&lt;/b&gt;&lt;p&gt;This list shows the configured message filters used to suppress error messages from within Qt.&lt;/p&gt;</source>
         <translation type="unfinished"></translation>
@@ -20860,102 +20820,62 @@
         <translation>Errores</translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/HgDiffDialog.ui" line="89"/>
-        <source>Input</source>
-        <translation>Input</translation>
-    </message>
-    <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/HgDiffDialog.ui" line="111"/>
-        <source>Press to send the input to the hg process</source>
-        <translation>Pulse para enviar el input al proceso de hg</translation>
-    </message>
-    <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/HgDiffDialog.ui" line="114"/>
-        <source>&amp;Send</source>
-        <translation>&amp;Enviar</translation>
-    </message>
-    <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/HgDiffDialog.ui" line="117"/>
-        <source>Alt+S</source>
-        <translation>Alt+S</translation>
-    </message>
-    <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/HgDiffDialog.ui" line="124"/>
-        <source>Enter data to be sent to the hg process</source>
-        <translation>Introduzca los datos a enviar al proceso de hg</translation>
-    </message>
-    <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/HgDiffDialog.ui" line="131"/>
-        <source>Select to switch the input field to password mode</source>
-        <translation>Seleccionar para cambiar el campo de input a modo contraseña</translation>
-    </message>
-    <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/HgDiffDialog.ui" line="134"/>
-        <source>&amp;Password Mode</source>
-        <translation>&amp;Modo de contraseña</translation>
-    </message>
-    <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/HgDiffDialog.ui" line="137"/>
-        <source>Alt+P</source>
-        <translation>Alt+P</translation>
-    </message>
-    <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/HgDiffDialog.py" line="206"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/HgDiffDialog.py" line="104"/>
         <source>Process Generation Error</source>
         <translation>Error de Generación de Proceso</translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/HgDiffDialog.py" line="206"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/HgDiffDialog.py" line="104"/>
         <source>The process {0} could not be started. Ensure, that it is in the search path.</source>
         <translation>El proceso {0} no se ha podido ejecutar. Verifique que está en la ruta de búsqueda (search path).</translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/HgDiffDialog.py" line="234"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/HgDiffDialog.py" line="124"/>
         <source>There is no difference.</source>
         <translation>No hay ninguna diferencia.</translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/HgDiffDialog.py" line="449"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/HgDiffDialog.py" line="252"/>
         <source>Save Diff</source>
         <translation>Guardar Diff</translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/HgDiffDialog.py" line="416"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/HgDiffDialog.py" line="219"/>
         <source>Patch Files (*.diff)</source>
         <translation>Archivos de Parche (*.diff)</translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/HgDiffDialog.py" line="449"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/HgDiffDialog.py" line="252"/>
         <source>&lt;p&gt;The patch file &lt;b&gt;{0}&lt;/b&gt; could not be saved.&lt;br&gt;Reason: {1}&lt;/p&gt;</source>
         <translation>&lt;p&gt;El archivo de parche &lt;b&gt;{0}&lt;/b&gt; no puede ser guardado.&lt;br /&gt;Causa: {1}&lt;/p&gt;</translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/HgDiffDialog.py" line="433"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/HgDiffDialog.py" line="236"/>
         <source>&lt;p&gt;The patch file &lt;b&gt;{0}&lt;/b&gt; already exists. Overwrite it?&lt;/p&gt;</source>
         <translation>&lt;p&gt;El archivo de parche &lt;b&gt;{0}&lt;/b&gt; ya existe. ¿Desea sobreescribirlo?&lt;/p&gt;</translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/HgDiffDialog.py" line="128"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/HgDiffDialog.py" line="95"/>
         <source>Patch Contents</source>
         <translation>Contenido del Patch</translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/HgDiffDialog.py" line="247"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/HgDiffDialog.py" line="143"/>
         <source>&lt;Start&gt;</source>
         <translation>&lt;Inicio&gt;</translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/HgDiffDialog.py" line="248"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/HgDiffDialog.py" line="144"/>
         <source>&lt;End&gt;</source>
         <translation>&lt;Fin&gt;</translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/HgDiffDialog.py" line="47"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/HgDiffDialog.py" line="46"/>
         <source>Refresh</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/HgDiffDialog.py" line="49"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/HgDiffDialog.py" line="48"/>
         <source>Press to refresh the display</source>
         <translation type="unfinished"></translation>
     </message>
@@ -21577,11 +21497,6 @@
         <translation>Mensaje</translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/HgLogBrowserDialog.ui" line="207"/>
-        <source>Enter the regular expression to filter on</source>
-        <translation type="obsolete">Introduzca la expresión regular de filtrado</translation>
-    </message>
-    <message>
         <location filename="../Plugins/VcsPlugins/vcsMercurial/HgLogBrowserDialog.ui" line="196"/>
         <source>Date</source>
         <translation>Fecha</translation>
@@ -21889,11 +21804,6 @@
         <translation>{0} (archivo grande)</translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/HgLogBrowserDialog.py" line="98"/>
-        <source>&lt;table&gt;&lt;tr&gt;&lt;td&gt;&lt;b&gt;Revision&lt;/b&gt;&lt;/td&gt;&lt;td&gt;{0}&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;&lt;b&gt;Date&lt;/b&gt;&lt;/td&gt;&lt;td&gt;{1}&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;&lt;b&gt;Author&lt;/b&gt;&lt;/td&gt;&lt;td&gt;{2}&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;&lt;b&gt;Branch&lt;/b&gt;&lt;/td&gt;&lt;td&gt;{3}&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;&lt;b&gt;Tags&lt;/b&gt;&lt;/td&gt;&lt;td&gt;{4}&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;&lt;b&gt;Bookmarks&lt;/b&gt;&lt;/td&gt;&lt;td&gt;{5}&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;&lt;b&gt;Parents&lt;/b&gt;&lt;/td&gt;&lt;td&gt;{6}&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;</source>
-        <translation type="obsolete">&lt;table&gt;&lt;tr&gt;&lt;td&gt;&lt;b&gt;Revisión&lt;/b&gt;&lt;/td&gt;&lt;td&gt;{0}&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;&lt;b&gt;Fecha&lt;/b&gt;&lt;/td&gt;&lt;td&gt;{1}&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;&lt;b&gt;Autor&lt;/b&gt;&lt;/td&gt;&lt;td&gt;{2}&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;&lt;b&gt;Branch&lt;/b&gt;&lt;/td&gt;&lt;td&gt;{3}&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;&lt;b&gt;Tags&lt;/b&gt;&lt;/td&gt;&lt;td&gt;{4}&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;&lt;b&gt;Bookmarks&lt;/b&gt;&lt;/td&gt;&lt;td&gt;{5}&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;&lt;b&gt;Parents&lt;/b&gt;&lt;/td&gt;&lt;td&gt;{6}&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;</translation>
-    </message>
-    <message>
         <location filename="../Plugins/VcsPlugins/vcsMercurial/HgLogBrowserDialog.ui" line="22"/>
         <source>Select the mode (find or filter)</source>
         <translation type="unfinished"></translation>
@@ -28402,21 +28312,6 @@
         <translation>hojas de Estilos Qt (*.qss);;hojas de Estilos CSS (*.css);;Todos los Archivos(*)</translation>
     </message>
     <message>
-        <location filename="../Preferences/ConfigurationPages/InterfacePage.ui" line="104"/>
-        <source>Log-Viewer</source>
-        <translation type="obsolete">Visor de Log</translation>
-    </message>
-    <message>
-        <location filename="../Preferences/ConfigurationPages/InterfacePage.ui" line="120"/>
-        <source>Stderr Colour:</source>
-        <translation type="obsolete">Color para Stderr:</translation>
-    </message>
-    <message>
-        <location filename="../Preferences/ConfigurationPages/InterfacePage.ui" line="133"/>
-        <source>Select the colour for text sent to stderr</source>
-        <translation type="obsolete">Seleccionar el color para el texto enviado a stderr</translation>
-    </message>
-    <message>
         <location filename="../Preferences/ConfigurationPages/InterfacePage.ui" line="449"/>
         <source>Toolboxes</source>
         <translation>Cajas de herramientas</translation>
@@ -28467,16 +28362,6 @@
         <translation>Ordenar contenidos por ocurrencia</translation>
     </message>
     <message>
-        <location filename="../Preferences/ConfigurationPages/InterfacePage.ui" line="110"/>
-        <source>Select to show the log-viewer upon new output</source>
-        <translation type="obsolete">Seleccionar para mostrar el visor de log con el siguiente output</translation>
-    </message>
-    <message>
-        <location filename="../Preferences/ConfigurationPages/InterfacePage.ui" line="113"/>
-        <source>Show upon new output</source>
-        <translation type="obsolete">Mostrar con el siguiente output</translation>
-    </message>
-    <message>
         <location filename="../Preferences/ConfigurationPages/InterfacePage.ui" line="531"/>
         <source>Tabs</source>
         <translation>Pestañas</translation>
@@ -50473,21 +50358,6 @@
         <translation>&lt;b&gt;Borrar Propiedad&lt;/b&gt;&lt;p&gt;Borra una propiedad de los archivos del proyecto.&lt;/p&gt;</translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsPySvn/ProjectHelper.py" line="209"/>
-        <source>Show repository info</source>
-        <translation type="obsolete">Mostrar informacion del repositorio</translation>
-    </message>
-    <message>
-        <location filename="../Plugins/VcsPlugins/vcsPySvn/ProjectHelper.py" line="214"/>
-        <source>Show some repository related information for the local project</source>
-        <translation type="obsolete">Mostrar información relacionada con el repositorio para el proyecto local</translation>
-    </message>
-    <message>
-        <location filename="../Plugins/VcsPlugins/vcsPySvn/ProjectHelper.py" line="217"/>
-        <source>&lt;b&gt;Show repository info&lt;/b&gt;&lt;p&gt;This shows some repository related information for the local project.&lt;/p&gt;</source>
-        <translation type="obsolete">&lt;b&gt;Mostrar información del repositorio&lt;/b&gt;&lt;p&gt;Muestra información relacionada con el repositorio para el proyecto local.&lt;/p&gt;</translation>
-    </message>
-    <message>
         <location filename="../Plugins/VcsPlugins/vcsSubversion/ProjectHelper.py" line="426"/>
         <source>Relocate</source>
         <translation>Trasladar (relocate)</translation>
@@ -50725,7 +50595,7 @@
 &lt;p&gt;Muestra los posibles mensajes de error del comando subversion proplist.&lt;/p&gt;</translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsSubversion/SvnPropListDialog.py" line="152"/>
+        <location filename="../Plugins/VcsPlugins/vcsSubversion/SvnPropListDialog.py" line="151"/>
         <source>Process Generation Error</source>
         <translation>Error de Generación de Proceso</translation>
     </message>
@@ -50740,7 +50610,7 @@
         <translation>Errores</translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsSubversion/SvnPropListDialog.py" line="152"/>
+        <location filename="../Plugins/VcsPlugins/vcsSubversion/SvnPropListDialog.py" line="151"/>
         <source>The process {0} could not be started. Ensure, that it is in the search path.</source>
         <translation>El proceso {0} no se ha podido ejecutar. Verifique que está en la ruta de búsqueda (search path).</translation>
     </message>
--- a/i18n/eric6_fr.ts	Tue Feb 24 18:31:14 2015 +0100
+++ b/i18n/eric6_fr.ts	Tue Feb 24 18:55:07 2015 +0100
@@ -4097,7 +4097,7 @@
         <translation>Gestionnaire d&apos;affichage</translation>
     </message>
     <message>
-        <location filename="../Preferences/ConfigurationDialog.py" line="567"/>
+        <location filename="../Preferences/ConfigurationDialog.py" line="568"/>
         <source>Configuration Page Error</source>
         <translation>Erreur de la page de configuration</translation>
     </message>
@@ -4159,7 +4159,7 @@
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Preferences/ConfigurationDialog.py" line="567"/>
+        <location filename="../Preferences/ConfigurationDialog.py" line="568"/>
         <source>&lt;p&gt;The configuration page &lt;b&gt;{0}&lt;/b&gt; could not be loaded.&lt;/p&gt;</source>
         <translation type="unfinished"></translation>
     </message>
@@ -20807,100 +20807,85 @@
     <message>
         <location filename="../Plugins/VcsPlugins/vcsMercurial/HgDiffDialog.ui" line="89"/>
         <source>Input</source>
-        <translation type="unfinished">Entrée</translation>
-    </message>
-    <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/HgDiffDialog.ui" line="111"/>
-        <source>Press to send the input to the hg process</source>
-        <translation type="unfinished"></translation>
+        <translation type="obsolete">Entrée</translation>
     </message>
     <message>
         <location filename="../Plugins/VcsPlugins/vcsMercurial/HgDiffDialog.ui" line="114"/>
         <source>&amp;Send</source>
-        <translation type="unfinished">&amp;Envoyer</translation>
-    </message>
-    <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/HgDiffDialog.ui" line="117"/>
-        <source>Alt+S</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/HgDiffDialog.ui" line="124"/>
-        <source>Enter data to be sent to the hg process</source>
-        <translation type="unfinished"></translation>
+        <translation type="obsolete">&amp;Envoyer</translation>
     </message>
     <message>
         <location filename="../Plugins/VcsPlugins/vcsMercurial/HgDiffDialog.ui" line="131"/>
         <source>Select to switch the input field to password mode</source>
-        <translation type="unfinished">Cocher pour basculer le champ d&apos;entrée en mode Mot de Passe</translation>
+        <translation type="obsolete">Cocher pour basculer le champ d&apos;entrée en mode Mot de Passe</translation>
     </message>
     <message>
         <location filename="../Plugins/VcsPlugins/vcsMercurial/HgDiffDialog.ui" line="134"/>
         <source>&amp;Password Mode</source>
-        <translation type="unfinished">Mode Mot de &amp;Passe</translation>
+        <translation type="obsolete">Mode Mot de &amp;Passe</translation>
     </message>
     <message>
         <location filename="../Plugins/VcsPlugins/vcsMercurial/HgDiffDialog.ui" line="137"/>
         <source>Alt+P</source>
-        <translation type="unfinished">Alt+P</translation>
-    </message>
-    <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/HgDiffDialog.py" line="206"/>
+        <translation type="obsolete">Alt+P</translation>
+    </message>
+    <message>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/HgDiffDialog.py" line="104"/>
         <source>Process Generation Error</source>
         <translation type="unfinished">Erreur du processus</translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/HgDiffDialog.py" line="206"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/HgDiffDialog.py" line="104"/>
         <source>The process {0} could not be started. Ensure, that it is in the search path.</source>
         <translation type="unfinished">Impossible de lancer le processus {0}. Assurez-vous qu&apos;il est bien dans le chemin de recherche.</translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/HgDiffDialog.py" line="234"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/HgDiffDialog.py" line="124"/>
         <source>There is no difference.</source>
         <translation type="unfinished">Aucune différence.</translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/HgDiffDialog.py" line="449"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/HgDiffDialog.py" line="252"/>
         <source>Save Diff</source>
         <translation type="unfinished">Enregistrer Diff</translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/HgDiffDialog.py" line="416"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/HgDiffDialog.py" line="219"/>
         <source>Patch Files (*.diff)</source>
         <translation type="unfinished">Fichiers Patch (*.diff)</translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/HgDiffDialog.py" line="449"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/HgDiffDialog.py" line="252"/>
         <source>&lt;p&gt;The patch file &lt;b&gt;{0}&lt;/b&gt; could not be saved.&lt;br&gt;Reason: {1}&lt;/p&gt;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/HgDiffDialog.py" line="433"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/HgDiffDialog.py" line="236"/>
         <source>&lt;p&gt;The patch file &lt;b&gt;{0}&lt;/b&gt; already exists. Overwrite it?&lt;/p&gt;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/HgDiffDialog.py" line="128"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/HgDiffDialog.py" line="95"/>
         <source>Patch Contents</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/HgDiffDialog.py" line="247"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/HgDiffDialog.py" line="143"/>
         <source>&lt;Start&gt;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/HgDiffDialog.py" line="248"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/HgDiffDialog.py" line="144"/>
         <source>&lt;End&gt;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/HgDiffDialog.py" line="47"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/HgDiffDialog.py" line="46"/>
         <source>Refresh</source>
         <translation type="unfinished">Rafraichir</translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/HgDiffDialog.py" line="49"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/HgDiffDialog.py" line="48"/>
         <source>Press to refresh the display</source>
         <translation type="unfinished"></translation>
     </message>
@@ -50573,7 +50558,7 @@
 &lt;p&gt;Affiche les erreurs possibles de la commande &quot;proplist&quot; de Subversion&lt;/p&gt;</translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsSubversion/SvnPropListDialog.py" line="152"/>
+        <location filename="../Plugins/VcsPlugins/vcsSubversion/SvnPropListDialog.py" line="151"/>
         <source>Process Generation Error</source>
         <translation>Erreur du processus</translation>
     </message>
@@ -50588,7 +50573,7 @@
         <translation>Erreurs</translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsSubversion/SvnPropListDialog.py" line="152"/>
+        <location filename="../Plugins/VcsPlugins/vcsSubversion/SvnPropListDialog.py" line="151"/>
         <source>The process {0} could not be started. Ensure, that it is in the search path.</source>
         <translation type="unfinished">Impossible de lancer le processus {0}. Assurez-vous qu&apos;il est bien dans le chemin de recherche.</translation>
     </message>
--- a/i18n/eric6_it.ts	Tue Feb 24 18:31:14 2015 +0100
+++ b/i18n/eric6_it.ts	Tue Feb 24 18:55:07 2015 +0100
@@ -4109,7 +4109,7 @@
         <translation>Gestrore viste</translation>
     </message>
     <message>
-        <location filename="../Preferences/ConfigurationDialog.py" line="567"/>
+        <location filename="../Preferences/ConfigurationDialog.py" line="568"/>
         <source>Configuration Page Error</source>
         <translation>Configurazione pagine errore</translation>
     </message>
@@ -4171,7 +4171,7 @@
         <translation>Python3</translation>
     </message>
     <message>
-        <location filename="../Preferences/ConfigurationDialog.py" line="567"/>
+        <location filename="../Preferences/ConfigurationDialog.py" line="568"/>
         <source>&lt;p&gt;The configuration page &lt;b&gt;{0}&lt;/b&gt; could not be loaded.&lt;/p&gt;</source>
         <translation>&lt;p&gt;La pagina di configurazione &lt;b&gt;{0}&lt;/b&gt; non può essere caricata.&lt;/p&gt;</translation>
     </message>
@@ -20855,100 +20855,100 @@
     <message>
         <location filename="../Plugins/VcsPlugins/vcsMercurial/HgDiffDialog.ui" line="89"/>
         <source>Input</source>
-        <translation>Input</translation>
+        <translation type="obsolete">Input</translation>
     </message>
     <message>
         <location filename="../Plugins/VcsPlugins/vcsMercurial/HgDiffDialog.ui" line="111"/>
         <source>Press to send the input to the hg process</source>
-        <translation>Premi per spedire l&apos;input al processo hg</translation>
+        <translation type="obsolete">Premi per spedire l&apos;input al processo hg</translation>
     </message>
     <message>
         <location filename="../Plugins/VcsPlugins/vcsMercurial/HgDiffDialog.ui" line="114"/>
         <source>&amp;Send</source>
-        <translation>&amp;Spedisci</translation>
+        <translation type="obsolete">&amp;Spedisci</translation>
     </message>
     <message>
         <location filename="../Plugins/VcsPlugins/vcsMercurial/HgDiffDialog.ui" line="117"/>
         <source>Alt+S</source>
-        <translation>Alt+S</translation>
+        <translation type="obsolete">Alt+S</translation>
     </message>
     <message>
         <location filename="../Plugins/VcsPlugins/vcsMercurial/HgDiffDialog.ui" line="124"/>
         <source>Enter data to be sent to the hg process</source>
-        <translation>Inserisci i dati da inviare al processo hg</translation>
+        <translation type="obsolete">Inserisci i dati da inviare al processo hg</translation>
     </message>
     <message>
         <location filename="../Plugins/VcsPlugins/vcsMercurial/HgDiffDialog.ui" line="131"/>
         <source>Select to switch the input field to password mode</source>
-        <translation>Seleziona per impostare il campo di input in modalità password</translation>
+        <translation type="obsolete">Seleziona per impostare il campo di input in modalità password</translation>
     </message>
     <message>
         <location filename="../Plugins/VcsPlugins/vcsMercurial/HgDiffDialog.ui" line="134"/>
         <source>&amp;Password Mode</source>
-        <translation>Modo &amp;Password</translation>
+        <translation type="obsolete">Modo &amp;Password</translation>
     </message>
     <message>
         <location filename="../Plugins/VcsPlugins/vcsMercurial/HgDiffDialog.ui" line="137"/>
         <source>Alt+P</source>
-        <translation>Alt+P</translation>
-    </message>
-    <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/HgDiffDialog.py" line="206"/>
+        <translation type="obsolete">Alt+P</translation>
+    </message>
+    <message>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/HgDiffDialog.py" line="104"/>
         <source>Process Generation Error</source>
         <translation>Errore Generazione Processo</translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/HgDiffDialog.py" line="206"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/HgDiffDialog.py" line="104"/>
         <source>The process {0} could not be started. Ensure, that it is in the search path.</source>
         <translation>Il processo {0}  non può essere avviato. Assicurarsi che sia nel path.</translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/HgDiffDialog.py" line="234"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/HgDiffDialog.py" line="124"/>
         <source>There is no difference.</source>
         <translation>Non ci sono differenze.</translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/HgDiffDialog.py" line="449"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/HgDiffDialog.py" line="252"/>
         <source>Save Diff</source>
         <translation>Salva Diff</translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/HgDiffDialog.py" line="416"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/HgDiffDialog.py" line="219"/>
         <source>Patch Files (*.diff)</source>
         <translation>File Patch (*.diff)</translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/HgDiffDialog.py" line="449"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/HgDiffDialog.py" line="252"/>
         <source>&lt;p&gt;The patch file &lt;b&gt;{0}&lt;/b&gt; could not be saved.&lt;br&gt;Reason: {1}&lt;/p&gt;</source>
         <translation>&lt;p&gt;Il file &lt;b&gt;{0}&lt;/b&gt; non può essere salvato.&lt;br /&gt;Motivo: {1}&lt;/p&gt;</translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/HgDiffDialog.py" line="433"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/HgDiffDialog.py" line="236"/>
         <source>&lt;p&gt;The patch file &lt;b&gt;{0}&lt;/b&gt; already exists. Overwrite it?&lt;/p&gt;</source>
         <translation>&lt;p&gt;Il file  patch &lt;b&gt;{0}&lt;/b&gt; esiste già.Sovrascriverlo ?&lt;/p&gt;</translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/HgDiffDialog.py" line="128"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/HgDiffDialog.py" line="95"/>
         <source>Patch Contents</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/HgDiffDialog.py" line="247"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/HgDiffDialog.py" line="143"/>
         <source>&lt;Start&gt;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/HgDiffDialog.py" line="248"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/HgDiffDialog.py" line="144"/>
         <source>&lt;End&gt;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/HgDiffDialog.py" line="47"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/HgDiffDialog.py" line="46"/>
         <source>Refresh</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/HgDiffDialog.py" line="49"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/HgDiffDialog.py" line="48"/>
         <source>Press to refresh the display</source>
         <translation type="unfinished"></translation>
     </message>
@@ -50648,7 +50648,7 @@
 &lt;p&gt;Mostra i possibile messaggi di errore del comando subversion proplist.&lt;/p&gt;</translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsSubversion/SvnPropListDialog.py" line="152"/>
+        <location filename="../Plugins/VcsPlugins/vcsSubversion/SvnPropListDialog.py" line="151"/>
         <source>Process Generation Error</source>
         <translation>Errore Generazione Processo</translation>
     </message>
@@ -50663,7 +50663,7 @@
         <translation>Errori</translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsSubversion/SvnPropListDialog.py" line="152"/>
+        <location filename="../Plugins/VcsPlugins/vcsSubversion/SvnPropListDialog.py" line="151"/>
         <source>The process {0} could not be started. Ensure, that it is in the search path.</source>
         <translation>Il processo {0}  non può essere avviato. Assicurarsi che sia nel path.</translation>
     </message>
--- a/i18n/eric6_pt.ts	Tue Feb 24 18:31:14 2015 +0100
+++ b/i18n/eric6_pt.ts	Tue Feb 24 18:55:07 2015 +0100
@@ -4173,12 +4173,12 @@
 para mostrar a página de configuração.</translation>
     </message>
     <message>
-        <location filename="../Preferences/ConfigurationDialog.py" line="567"/>
+        <location filename="../Preferences/ConfigurationDialog.py" line="568"/>
         <source>Configuration Page Error</source>
         <translation>Erro na Página de Configuração</translation>
     </message>
     <message>
-        <location filename="../Preferences/ConfigurationDialog.py" line="567"/>
+        <location filename="../Preferences/ConfigurationDialog.py" line="568"/>
         <source>&lt;p&gt;The configuration page &lt;b&gt;{0}&lt;/b&gt; could not be loaded.&lt;/p&gt;</source>
         <translation>&lt;p&gt;A página de configuração &lt;b&gt;{0}&lt;/b&gt; não pôde ser carregada.&lt;/p&gt;</translation>
     </message>
@@ -20810,100 +20810,100 @@
     <message>
         <location filename="../Plugins/VcsPlugins/vcsMercurial/HgDiffDialog.ui" line="89"/>
         <source>Input</source>
-        <translation>Entrada</translation>
+        <translation type="obsolete">Entrada</translation>
     </message>
     <message>
         <location filename="../Plugins/VcsPlugins/vcsMercurial/HgDiffDialog.ui" line="111"/>
         <source>Press to send the input to the hg process</source>
-        <translation>Pressionar para enviar entrada ao processo hg</translation>
+        <translation type="obsolete">Pressionar para enviar entrada ao processo hg</translation>
     </message>
     <message>
         <location filename="../Plugins/VcsPlugins/vcsMercurial/HgDiffDialog.ui" line="114"/>
         <source>&amp;Send</source>
-        <translation>&amp;Enviar</translation>
+        <translation type="obsolete">&amp;Enviar</translation>
     </message>
     <message>
         <location filename="../Plugins/VcsPlugins/vcsMercurial/HgDiffDialog.ui" line="117"/>
         <source>Alt+S</source>
-        <translation>Alt+S</translation>
+        <translation type="obsolete">Alt+S</translation>
     </message>
     <message>
         <location filename="../Plugins/VcsPlugins/vcsMercurial/HgDiffDialog.ui" line="124"/>
         <source>Enter data to be sent to the hg process</source>
-        <translation>Introduzir dados a enviar ao processo hg</translation>
+        <translation type="obsolete">Introduzir dados a enviar ao processo hg</translation>
     </message>
     <message>
         <location filename="../Plugins/VcsPlugins/vcsMercurial/HgDiffDialog.ui" line="131"/>
         <source>Select to switch the input field to password mode</source>
-        <translation>Selecionar para mudar o campo de entrada ao modo senha</translation>
+        <translation type="obsolete">Selecionar para mudar o campo de entrada ao modo senha</translation>
     </message>
     <message>
         <location filename="../Plugins/VcsPlugins/vcsMercurial/HgDiffDialog.ui" line="134"/>
         <source>&amp;Password Mode</source>
-        <translation>Modo &amp;Senha</translation>
+        <translation type="obsolete">Modo &amp;Senha</translation>
     </message>
     <message>
         <location filename="../Plugins/VcsPlugins/vcsMercurial/HgDiffDialog.ui" line="137"/>
         <source>Alt+P</source>
-        <translation>Alt+P</translation>
-    </message>
-    <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/HgDiffDialog.py" line="206"/>
+        <translation type="obsolete">Alt+P</translation>
+    </message>
+    <message>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/HgDiffDialog.py" line="104"/>
         <source>Process Generation Error</source>
         <translation>Erro na Criação de Processo</translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/HgDiffDialog.py" line="206"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/HgDiffDialog.py" line="104"/>
         <source>The process {0} could not be started. Ensure, that it is in the search path.</source>
         <translation>O processo {0} não se pôde iniciar. Assegure-se de que está na rota de busca.</translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/HgDiffDialog.py" line="234"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/HgDiffDialog.py" line="124"/>
         <source>There is no difference.</source>
         <translation>Não há diferenças.</translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/HgDiffDialog.py" line="449"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/HgDiffDialog.py" line="252"/>
         <source>Save Diff</source>
         <translation>Gravar Diff</translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/HgDiffDialog.py" line="416"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/HgDiffDialog.py" line="219"/>
         <source>Patch Files (*.diff)</source>
         <translation type="unfinished">Ficheiros de Remendos (*.diff)</translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/HgDiffDialog.py" line="433"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/HgDiffDialog.py" line="236"/>
         <source>&lt;p&gt;The patch file &lt;b&gt;{0}&lt;/b&gt; already exists. Overwrite it?&lt;/p&gt;</source>
         <translation type="unfinished">&lt;p&gt;O ficheiro de remendo &lt;b&gt;{0}&lt;/b&gt; já existe. Sobreescrever-lo?&lt;/p&gt;</translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/HgDiffDialog.py" line="449"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/HgDiffDialog.py" line="252"/>
         <source>&lt;p&gt;The patch file &lt;b&gt;{0}&lt;/b&gt; could not be saved.&lt;br&gt;Reason: {1}&lt;/p&gt;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/HgDiffDialog.py" line="128"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/HgDiffDialog.py" line="95"/>
         <source>Patch Contents</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/HgDiffDialog.py" line="247"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/HgDiffDialog.py" line="143"/>
         <source>&lt;Start&gt;</source>
         <translation>&lt;Inicio&gt;</translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/HgDiffDialog.py" line="248"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/HgDiffDialog.py" line="144"/>
         <source>&lt;End&gt;</source>
         <translation>&lt;Fim&gt;</translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/HgDiffDialog.py" line="47"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/HgDiffDialog.py" line="46"/>
         <source>Refresh</source>
         <translation>Atualizar</translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/HgDiffDialog.py" line="49"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/HgDiffDialog.py" line="48"/>
         <source>Press to refresh the display</source>
         <translation type="unfinished"></translation>
     </message>
@@ -50364,12 +50364,12 @@
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsSubversion/SvnPropListDialog.py" line="152"/>
+        <location filename="../Plugins/VcsPlugins/vcsSubversion/SvnPropListDialog.py" line="151"/>
         <source>Process Generation Error</source>
         <translation>Erro na Criação de Processo</translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsSubversion/SvnPropListDialog.py" line="152"/>
+        <location filename="../Plugins/VcsPlugins/vcsSubversion/SvnPropListDialog.py" line="151"/>
         <source>The process {0} could not be started. Ensure, that it is in the search path.</source>
         <translation>O processo {0} não se pôde iniciar. Assegure-se de que está na rota de busca.</translation>
     </message>
Binary file i18n/eric6_ru.qm has changed
--- a/i18n/eric6_ru.ts	Tue Feb 24 18:31:14 2015 +0100
+++ b/i18n/eric6_ru.ts	Tue Feb 24 18:55:07 2015 +0100
@@ -4116,12 +4116,12 @@
         <translation>Управление видом</translation>
     </message>
     <message>
-        <location filename="../Preferences/ConfigurationDialog.py" line="567"/>
+        <location filename="../Preferences/ConfigurationDialog.py" line="568"/>
         <source>Configuration Page Error</source>
         <translation>Ошибка страницы конфигурации</translation>
     </message>
     <message>
-        <location filename="../Preferences/ConfigurationDialog.py" line="567"/>
+        <location filename="../Preferences/ConfigurationDialog.py" line="568"/>
         <source>&lt;p&gt;The configuration page &lt;b&gt;{0}&lt;/b&gt; could not be loaded.&lt;/p&gt;</source>
         <translation>&lt;p&gt;Страница конфигурации &lt;b&gt;{0}&lt;/b&gt; не может быть загружена.&lt;/p&gt;</translation>
     </message>
@@ -7305,53 +7305,6 @@
         <translation>Фильтр сообщений об ошибке</translation>
     </message>
     <message>
-        <location filename="../E5Gui/E5ErrorMessageFilterDialog.ui" line="40"/>
-        <source>Enter search term for message</source>
-        <translation type="obsolete">Введите образец для поиска</translation>
-    </message>
-    <message>
-        <location filename="../E5Gui/E5ErrorMessageFilterDialog.ui" line="77"/>
-        <source>Press to add filter to the list</source>
-        <translation type="obsolete">Добавить новый фильтр</translation>
-    </message>
-    <message>
-        <location filename="../E5Gui/E5ErrorMessageFilterDialog.ui" line="80"/>
-        <source>&amp;Add...</source>
-        <translation type="obsolete">&amp;Добавить...</translation>
-    </message>
-    <message>
-        <location filename="../E5Gui/E5ErrorMessageFilterDialog.ui" line="97"/>
-        <source>Press to remove the selected entries</source>
-        <translation type="obsolete">Удалить выбранные элементы</translation>
-    </message>
-    <message>
-        <location filename="../E5Gui/E5ErrorMessageFilterDialog.ui" line="100"/>
-        <source>&amp;Remove</source>
-        <translation type="obsolete">&amp;Удалить</translation>
-    </message>
-    <message>
-        <location filename="../E5Gui/E5ErrorMessageFilterDialog.ui" line="110"/>
-        <source>Press to remove all entries</source>
-        <translation type="obsolete">Удалить все элементы</translation>
-    </message>
-    <message>
-        <location filename="../E5Gui/E5ErrorMessageFilterDialog.ui" line="113"/>
-        <source>R&amp;emove All</source>
-        <translation type="obsolete">У&amp;далить всё</translation>
-    </message>
-    <message>
-        <location filename="../E5Gui/E5ErrorMessageFilterDialog.py" line="51"/>
-        <source>Enter message filter to add to the list:</source>
-        <translation type="obsolete">Введите новый фильтр сообщений для добавления в список:</translation>
-    </message>
-    <message>
-        <location filename="../E5Gui/E5ErrorMessageFilterDialog.ui" line="123"/>
-        <source>&lt;b&gt;Error Message Filter&lt;/b&gt;
-&lt;p&gt;This list shows the configured message filters used to suppress error messages from within Qt.&lt;/p&gt;</source>
-        <translation type="obsolete">&lt;b&gt;Фильтры сообщений об ошибках&lt;/b&gt;
-&lt;p&gt;Показывает список фильтров нежелательных сообщений об ошибках Qt.&lt;/p&gt;</translation>
-    </message>
-    <message>
         <location filename="../E5Gui/E5ErrorMessageFilterDialog.py" line="33"/>
         <source>&lt;b&gt;Error Message Filters&lt;/b&gt;&lt;p&gt;This list shows the configured message filters used to suppress error messages from within Qt.&lt;/p&gt;</source>
         <translation type="unfinished"></translation>
@@ -20925,102 +20878,62 @@
         <translation>Ошибки</translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/HgDiffDialog.ui" line="89"/>
-        <source>Input</source>
-        <translation>Ввод</translation>
-    </message>
-    <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/HgDiffDialog.ui" line="111"/>
-        <source>Press to send the input to the hg process</source>
-        <translation>Отправить данные процессу hg</translation>
-    </message>
-    <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/HgDiffDialog.ui" line="114"/>
-        <source>&amp;Send</source>
-        <translation>&amp;Отправить</translation>
-    </message>
-    <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/HgDiffDialog.ui" line="117"/>
-        <source>Alt+S</source>
-        <translation>Alt+О</translation>
-    </message>
-    <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/HgDiffDialog.ui" line="124"/>
-        <source>Enter data to be sent to the hg process</source>
-        <translation>Задайте данные, которые будут посланы процессу hg</translation>
-    </message>
-    <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/HgDiffDialog.ui" line="131"/>
-        <source>Select to switch the input field to password mode</source>
-        <translation>Задать режим ввода пароля для поля ввода пароля</translation>
-    </message>
-    <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/HgDiffDialog.ui" line="134"/>
-        <source>&amp;Password Mode</source>
-        <translation>&amp;Парольный режим</translation>
-    </message>
-    <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/HgDiffDialog.ui" line="137"/>
-        <source>Alt+P</source>
-        <translation>Alt+П</translation>
-    </message>
-    <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/HgDiffDialog.py" line="206"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/HgDiffDialog.py" line="104"/>
         <source>Process Generation Error</source>
         <translation>Ошибка при запуске процесса</translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/HgDiffDialog.py" line="206"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/HgDiffDialog.py" line="104"/>
         <source>The process {0} could not be started. Ensure, that it is in the search path.</source>
         <translation>Не могу запустить процесс {0}. Убедитесь, что он находится в пути поиска.</translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/HgDiffDialog.py" line="234"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/HgDiffDialog.py" line="124"/>
         <source>There is no difference.</source>
         <translation>Различий нет.</translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/HgDiffDialog.py" line="449"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/HgDiffDialog.py" line="252"/>
         <source>Save Diff</source>
         <translation>Сохранить изменения</translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/HgDiffDialog.py" line="416"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/HgDiffDialog.py" line="219"/>
         <source>Patch Files (*.diff)</source>
         <translation>Файлы изменений (*.diff)</translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/HgDiffDialog.py" line="449"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/HgDiffDialog.py" line="252"/>
         <source>&lt;p&gt;The patch file &lt;b&gt;{0}&lt;/b&gt; could not be saved.&lt;br&gt;Reason: {1}&lt;/p&gt;</source>
         <translation>&lt;p&gt;Невозможно сохранить патч в файл &lt;b&gt;{0}&lt;/b&gt;:&lt;br&gt;Причина: {1}.&lt;/p&gt;</translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/HgDiffDialog.py" line="433"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/HgDiffDialog.py" line="236"/>
         <source>&lt;p&gt;The patch file &lt;b&gt;{0}&lt;/b&gt; already exists. Overwrite it?&lt;/p&gt;</source>
         <translation>&lt;p&gt;Файл изменений &lt;b&gt;{0}&lt;/b&gt; уже существует. Переписать?&lt;/p&gt;</translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/HgDiffDialog.py" line="128"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/HgDiffDialog.py" line="95"/>
         <source>Patch Contents</source>
         <translation>Содержимое паича</translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/HgDiffDialog.py" line="247"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/HgDiffDialog.py" line="143"/>
         <source>&lt;Start&gt;</source>
         <translation>&lt;Начало&gt;</translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/HgDiffDialog.py" line="248"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/HgDiffDialog.py" line="144"/>
         <source>&lt;End&gt;</source>
         <translation>&lt;Конец&gt;</translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/HgDiffDialog.py" line="47"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/HgDiffDialog.py" line="46"/>
         <source>Refresh</source>
         <translation>Обновить</translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/HgDiffDialog.py" line="49"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/HgDiffDialog.py" line="48"/>
         <source>Press to refresh the display</source>
         <translation>Нажмите, чтобы обновить отображение</translation>
     </message>
@@ -28471,21 +28384,6 @@
         <translation>Стили Qt (*.qss);;Каскадные стили (*.css);;Все файлы (*)</translation>
     </message>
     <message>
-        <location filename="../Preferences/ConfigurationPages/InterfacePage.ui" line="104"/>
-        <source>Log-Viewer</source>
-        <translation type="obsolete">Просмотрщик журнала</translation>
-    </message>
-    <message>
-        <location filename="../Preferences/ConfigurationPages/InterfacePage.ui" line="120"/>
-        <source>Stderr Colour:</source>
-        <translation type="obsolete">Цвет для Stderr:</translation>
-    </message>
-    <message>
-        <location filename="../Preferences/ConfigurationPages/InterfacePage.ui" line="133"/>
-        <source>Select the colour for text sent to stderr</source>
-        <translation type="obsolete">Выберите цвет текста в stderr</translation>
-    </message>
-    <message>
         <location filename="../Preferences/ConfigurationPages/InterfacePage.ui" line="449"/>
         <source>Toolboxes</source>
         <translation>Наборы иструментов</translation>
@@ -28536,16 +28434,6 @@
         <translation>Сортировать содержимое</translation>
     </message>
     <message>
-        <location filename="../Preferences/ConfigurationPages/InterfacePage.ui" line="110"/>
-        <source>Select to show the log-viewer upon new output</source>
-        <translation type="obsolete">Показывть журнал при появлении новых записей</translation>
-    </message>
-    <message>
-        <location filename="../Preferences/ConfigurationPages/InterfacePage.ui" line="113"/>
-        <source>Show upon new output</source>
-        <translation type="obsolete">Показывть при появлении новых записей</translation>
-    </message>
-    <message>
         <location filename="../Preferences/ConfigurationPages/InterfacePage.ui" line="531"/>
         <source>Tabs</source>
         <translation>Закладки</translation>
@@ -50829,7 +50717,7 @@
 &lt;p&gt;Показывает возможные ошибки команды subversion proplist.&lt;/p&gt;</translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsSubversion/SvnPropListDialog.py" line="152"/>
+        <location filename="../Plugins/VcsPlugins/vcsSubversion/SvnPropListDialog.py" line="151"/>
         <source>Process Generation Error</source>
         <translation>Ошибка при запуске процесса</translation>
     </message>
@@ -50839,7 +50727,7 @@
         <translation>Нет</translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsSubversion/SvnPropListDialog.py" line="152"/>
+        <location filename="../Plugins/VcsPlugins/vcsSubversion/SvnPropListDialog.py" line="151"/>
         <source>The process {0} could not be started. Ensure, that it is in the search path.</source>
         <translation>Не могу запустить процесс {0}. Убедитесь, что он находится в пути поиска.</translation>
     </message>
--- a/i18n/eric6_tr.ts	Tue Feb 24 18:31:14 2015 +0100
+++ b/i18n/eric6_tr.ts	Tue Feb 24 18:55:07 2015 +0100
@@ -4161,12 +4161,12 @@
 göstermek için gelen listeyi seçiniz.</translation>
     </message>
     <message>
-        <location filename="../Preferences/ConfigurationDialog.py" line="567"/>
+        <location filename="../Preferences/ConfigurationDialog.py" line="568"/>
         <source>Configuration Page Error</source>
         <translation>Ayarlama Sayfası Hatası</translation>
     </message>
     <message>
-        <location filename="../Preferences/ConfigurationDialog.py" line="567"/>
+        <location filename="../Preferences/ConfigurationDialog.py" line="568"/>
         <source>&lt;p&gt;The configuration page &lt;b&gt;{0}&lt;/b&gt; could not be loaded.&lt;/p&gt;</source>
         <translation>&lt;p&gt;TAyarlama sayfası &lt;b&gt;{0}&lt;/b&gt; yüklenemiyor.&lt;/p&gt;</translation>
     </message>
@@ -20779,100 +20779,100 @@
     <message>
         <location filename="../Plugins/VcsPlugins/vcsMercurial/HgDiffDialog.ui" line="89"/>
         <source>Input</source>
-        <translation>Girdi</translation>
+        <translation type="obsolete">Girdi</translation>
     </message>
     <message>
         <location filename="../Plugins/VcsPlugins/vcsMercurial/HgDiffDialog.ui" line="111"/>
         <source>Press to send the input to the hg process</source>
-        <translation>Hg işlem girdilerini göndermek için basınız</translation>
+        <translation type="obsolete">Hg işlem girdilerini göndermek için basınız</translation>
     </message>
     <message>
         <location filename="../Plugins/VcsPlugins/vcsMercurial/HgDiffDialog.ui" line="114"/>
         <source>&amp;Send</source>
-        <translation>&amp;Gönder</translation>
+        <translation type="obsolete">&amp;Gönder</translation>
     </message>
     <message>
         <location filename="../Plugins/VcsPlugins/vcsMercurial/HgDiffDialog.ui" line="117"/>
         <source>Alt+S</source>
-        <translation>Alt+S</translation>
+        <translation type="obsolete">Alt+S</translation>
     </message>
     <message>
         <location filename="../Plugins/VcsPlugins/vcsMercurial/HgDiffDialog.ui" line="124"/>
         <source>Enter data to be sent to the hg process</source>
-        <translation>Hg işlemlerine göndermek için verileri giriniz</translation>
+        <translation type="obsolete">Hg işlemlerine göndermek için verileri giriniz</translation>
     </message>
     <message>
         <location filename="../Plugins/VcsPlugins/vcsMercurial/HgDiffDialog.ui" line="131"/>
         <source>Select to switch the input field to password mode</source>
-        <translation>Giriş alanını parola moduna çevirmek için seçiniz</translation>
+        <translation type="obsolete">Giriş alanını parola moduna çevirmek için seçiniz</translation>
     </message>
     <message>
         <location filename="../Plugins/VcsPlugins/vcsMercurial/HgDiffDialog.ui" line="134"/>
         <source>&amp;Password Mode</source>
-        <translation>&amp;Parola Modu</translation>
+        <translation type="obsolete">&amp;Parola Modu</translation>
     </message>
     <message>
         <location filename="../Plugins/VcsPlugins/vcsMercurial/HgDiffDialog.ui" line="137"/>
         <source>Alt+P</source>
-        <translation>Alt+P</translation>
-    </message>
-    <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/HgDiffDialog.py" line="206"/>
+        <translation type="obsolete">Alt+P</translation>
+    </message>
+    <message>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/HgDiffDialog.py" line="104"/>
         <source>Process Generation Error</source>
         <translation>İşlem Üretecinde Hata</translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/HgDiffDialog.py" line="206"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/HgDiffDialog.py" line="104"/>
         <source>The process {0} could not be started. Ensure, that it is in the search path.</source>
         <translation>Süreç {0} başlatılamadı. Bunun arama yolunda olduğundan emin olun.</translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/HgDiffDialog.py" line="234"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/HgDiffDialog.py" line="124"/>
         <source>There is no difference.</source>
         <translation>Herhangi bir farklılık bulunamadı.</translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/HgDiffDialog.py" line="449"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/HgDiffDialog.py" line="252"/>
         <source>Save Diff</source>
         <translation>Farklılıkları Kaydet</translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/HgDiffDialog.py" line="416"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/HgDiffDialog.py" line="219"/>
         <source>Patch Files (*.diff)</source>
         <translation>Patch Dosyaları (*.diff)</translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/HgDiffDialog.py" line="449"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/HgDiffDialog.py" line="252"/>
         <source>&lt;p&gt;The patch file &lt;b&gt;{0}&lt;/b&gt; could not be saved.&lt;br&gt;Reason: {1}&lt;/p&gt;</source>
         <translation>&lt;p&gt;&lt;b&gt;{0}&lt;/b&gt;yama kaydedilemedi.&lt;br&gt;Sebep: {1}&lt;/p&gt;</translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/HgDiffDialog.py" line="433"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/HgDiffDialog.py" line="236"/>
         <source>&lt;p&gt;The patch file &lt;b&gt;{0}&lt;/b&gt; already exists. Overwrite it?&lt;/p&gt;</source>
         <translation>&lt;p&gt;Yama dosyası &lt;b&gt;{0}&lt;/b&gt;  zaten var. Üzerine yazılsın mı?&lt;/p&gt;</translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/HgDiffDialog.py" line="128"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/HgDiffDialog.py" line="95"/>
         <source>Patch Contents</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/HgDiffDialog.py" line="247"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/HgDiffDialog.py" line="143"/>
         <source>&lt;Start&gt;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/HgDiffDialog.py" line="248"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/HgDiffDialog.py" line="144"/>
         <source>&lt;End&gt;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/HgDiffDialog.py" line="47"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/HgDiffDialog.py" line="46"/>
         <source>Refresh</source>
         <translation type="unfinished">Tazele</translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/HgDiffDialog.py" line="49"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/HgDiffDialog.py" line="48"/>
         <source>Press to refresh the display</source>
         <translation type="unfinished"></translation>
     </message>
@@ -50362,12 +50362,12 @@
 &lt;p&gt;Bu altsürüm özelliklistesi komut hatalarını olası mesajlarını gösterir.&lt;/p&gt;</translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsSubversion/SvnPropListDialog.py" line="152"/>
+        <location filename="../Plugins/VcsPlugins/vcsSubversion/SvnPropListDialog.py" line="151"/>
         <source>Process Generation Error</source>
         <translation>İşlem Üretecinde Hata</translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsSubversion/SvnPropListDialog.py" line="152"/>
+        <location filename="../Plugins/VcsPlugins/vcsSubversion/SvnPropListDialog.py" line="151"/>
         <source>The process {0} could not be started. Ensure, that it is in the search path.</source>
         <translation>Süreç {0} başlatılamadı. Bunun arama yolunda olduğundan emin olun.</translation>
     </message>
--- a/i18n/eric6_zh_CN.GB2312.ts	Tue Feb 24 18:31:14 2015 +0100
+++ b/i18n/eric6_zh_CN.GB2312.ts	Tue Feb 24 18:55:07 2015 +0100
@@ -4135,7 +4135,7 @@
         <translation>请在左边选择一个列表项以显示配置页面。</translation>
     </message>
     <message>
-        <location filename="../Preferences/ConfigurationDialog.py" line="567"/>
+        <location filename="../Preferences/ConfigurationDialog.py" line="568"/>
         <source>Configuration Page Error</source>
         <translation>配置页面错误</translation>
     </message>
@@ -4145,7 +4145,7 @@
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Preferences/ConfigurationDialog.py" line="567"/>
+        <location filename="../Preferences/ConfigurationDialog.py" line="568"/>
         <source>&lt;p&gt;The configuration page &lt;b&gt;{0}&lt;/b&gt; could not be loaded.&lt;/p&gt;</source>
         <translation type="unfinished"></translation>
     </message>
@@ -20755,100 +20755,90 @@
     <message>
         <location filename="../Plugins/VcsPlugins/vcsMercurial/HgDiffDialog.ui" line="89"/>
         <source>Input</source>
-        <translation type="unfinished">输入</translation>
-    </message>
-    <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/HgDiffDialog.ui" line="111"/>
-        <source>Press to send the input to the hg process</source>
-        <translation type="unfinished"></translation>
+        <translation type="obsolete">输入</translation>
     </message>
     <message>
         <location filename="../Plugins/VcsPlugins/vcsMercurial/HgDiffDialog.ui" line="114"/>
         <source>&amp;Send</source>
-        <translation type="unfinished">发送(&amp;S)</translation>
+        <translation type="obsolete">发送(&amp;S)</translation>
     </message>
     <message>
         <location filename="../Plugins/VcsPlugins/vcsMercurial/HgDiffDialog.ui" line="117"/>
         <source>Alt+S</source>
-        <translation type="unfinished">Alt+S</translation>
-    </message>
-    <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/HgDiffDialog.ui" line="124"/>
-        <source>Enter data to be sent to the hg process</source>
-        <translation type="unfinished"></translation>
+        <translation type="obsolete">Alt+S</translation>
     </message>
     <message>
         <location filename="../Plugins/VcsPlugins/vcsMercurial/HgDiffDialog.ui" line="131"/>
         <source>Select to switch the input field to password mode</source>
-        <translation type="unfinished">选择将输入区域转换成密码模式</translation>
+        <translation type="obsolete">选择将输入区域转换成密码模式</translation>
     </message>
     <message>
         <location filename="../Plugins/VcsPlugins/vcsMercurial/HgDiffDialog.ui" line="134"/>
         <source>&amp;Password Mode</source>
-        <translation type="unfinished">密码模式(&amp;P)</translation>
+        <translation type="obsolete">密码模式(&amp;P)</translation>
     </message>
     <message>
         <location filename="../Plugins/VcsPlugins/vcsMercurial/HgDiffDialog.ui" line="137"/>
         <source>Alt+P</source>
-        <translation type="unfinished">Alt+P</translation>
-    </message>
-    <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/HgDiffDialog.py" line="206"/>
+        <translation type="obsolete">Alt+P</translation>
+    </message>
+    <message>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/HgDiffDialog.py" line="104"/>
         <source>Process Generation Error</source>
         <translation type="unfinished">进程生成错误</translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/HgDiffDialog.py" line="206"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/HgDiffDialog.py" line="104"/>
         <source>The process {0} could not be started. Ensure, that it is in the search path.</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/HgDiffDialog.py" line="234"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/HgDiffDialog.py" line="124"/>
         <source>There is no difference.</source>
         <translation type="unfinished">没有差异。</translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/HgDiffDialog.py" line="449"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/HgDiffDialog.py" line="252"/>
         <source>Save Diff</source>
         <translation type="unfinished">保存差异</translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/HgDiffDialog.py" line="416"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/HgDiffDialog.py" line="219"/>
         <source>Patch Files (*.diff)</source>
         <translation type="unfinished">补丁文件 (*.diff)</translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/HgDiffDialog.py" line="449"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/HgDiffDialog.py" line="252"/>
         <source>&lt;p&gt;The patch file &lt;b&gt;{0}&lt;/b&gt; could not be saved.&lt;br&gt;Reason: {1}&lt;/p&gt;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/HgDiffDialog.py" line="433"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/HgDiffDialog.py" line="236"/>
         <source>&lt;p&gt;The patch file &lt;b&gt;{0}&lt;/b&gt; already exists. Overwrite it?&lt;/p&gt;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/HgDiffDialog.py" line="128"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/HgDiffDialog.py" line="95"/>
         <source>Patch Contents</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/HgDiffDialog.py" line="247"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/HgDiffDialog.py" line="143"/>
         <source>&lt;Start&gt;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/HgDiffDialog.py" line="248"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/HgDiffDialog.py" line="144"/>
         <source>&lt;End&gt;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/HgDiffDialog.py" line="47"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/HgDiffDialog.py" line="46"/>
         <source>Refresh</source>
         <translation type="unfinished">刷新</translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/HgDiffDialog.py" line="49"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/HgDiffDialog.py" line="48"/>
         <source>Press to refresh the display</source>
         <translation type="unfinished"></translation>
     </message>
@@ -50502,7 +50492,7 @@
 &lt;p&gt;显示版本控制属性列表命令可能的错误消息。&lt;/p&gt;</translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsSubversion/SvnPropListDialog.py" line="152"/>
+        <location filename="../Plugins/VcsPlugins/vcsSubversion/SvnPropListDialog.py" line="151"/>
         <source>Process Generation Error</source>
         <translation>进程生成错误</translation>
     </message>
@@ -50512,7 +50502,7 @@
         <translation>无</translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsSubversion/SvnPropListDialog.py" line="152"/>
+        <location filename="../Plugins/VcsPlugins/vcsSubversion/SvnPropListDialog.py" line="151"/>
         <source>The process {0} could not be started. Ensure, that it is in the search path.</source>
         <translation type="unfinished"></translation>
     </message>

eric ide

mercurial