Made the first set of Qt5 compatibility changes.

Sun, 30 Sep 2012 13:27:28 +0200

author
Detlev Offenbach <detlev@die-offenbachs.de>
date
Sun, 30 Sep 2012 13:27:28 +0200
changeset 2077
68a34718a0ce
parent 2076
0d6286344ac1
child 2078
9f4a45741622

Made the first set of Qt5 compatibility changes.

APIs/Python3/eric5.api 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/eric5.E5Gui.E5Application.html file | annotate | diff | comparison | revisions
Documentation/Source/eric5.E5Network.E5Ftp.html file | annotate | diff | comparison | revisions
Documentation/Source/eric5.E5Network.E5UrlInfo.html file | annotate | diff | comparison | revisions
Documentation/Source/eric5.Utilities.FtpUtilities.html file | annotate | diff | comparison | revisions
Documentation/Source/index-eric5.E5Network.html file | annotate | diff | comparison | revisions
E5Gui/E5Application.py file | annotate | diff | comparison | revisions
E5Gui/E5LineEdit.py file | annotate | diff | comparison | revisions
E5Network/E5Ftp.py file | annotate | diff | comparison | revisions
E5Network/E5UrlInfo.py file | annotate | diff | comparison | revisions
Helpviewer/GreaseMonkey/GreaseMonkeyConfiguration/GreaseMonkeyConfigurationListDelegate.py file | annotate | diff | comparison | revisions
Helpviewer/Sync/FtpSyncHandler.py file | annotate | diff | comparison | revisions
Helpviewer/UrlBar/UrlBar.py file | annotate | diff | comparison | revisions
Preferences/__init__.py file | annotate | diff | comparison | revisions
QScintilla/Editor.py file | annotate | diff | comparison | revisions
QScintilla/MiniEditor.py file | annotate | diff | comparison | revisions
QScintilla/QsciScintillaCompat.py file | annotate | diff | comparison | revisions
QScintilla/Shell.py file | annotate | diff | comparison | revisions
QScintilla/Terminal.py file | annotate | diff | comparison | revisions
Utilities/FtpUtilities.py file | annotate | diff | comparison | revisions
Utilities/Startup.py file | annotate | diff | comparison | revisions
eric5.e4p file | annotate | diff | comparison | revisions
eric5.py file | annotate | diff | comparison | revisions
--- a/APIs/Python3/eric5.api	Sat Sep 29 19:59:18 2012 +0200
+++ b/APIs/Python3/eric5.api	Sun Sep 30 13:27:28 2012 +0200
@@ -1152,6 +1152,7 @@
 eric5.E5Gui.E5Application.E5Application.getPluginObject?4(name)
 eric5.E5Gui.E5Application.E5Application.getPluginObjectType?4(name)
 eric5.E5Gui.E5Application.E5Application.getPluginObjects?4()
+eric5.E5Gui.E5Application.E5Application.palette?4()
 eric5.E5Gui.E5Application.E5Application.registerObject?4(name, object)
 eric5.E5Gui.E5Application.E5Application.registerPluginObject?4(name, object, pluginType=None)
 eric5.E5Gui.E5Application.E5Application.unregisterPluginObject?4(name)
@@ -1531,6 +1532,42 @@
 eric5.E5Network.E5NetworkProxyFactory.E5NetworkProxyFactory?1()
 eric5.E5Network.E5NetworkProxyFactory.proxyAuthenticationRequired?4(proxy, auth)
 eric5.E5Network.E5NetworkProxyFactory.schemeFromProxyType?4(proxyType)
+eric5.E5Network.E5UrlInfo.E5UrlInfo.ExeGroup?7
+eric5.E5Network.E5UrlInfo.E5UrlInfo.ExeOther?7
+eric5.E5Network.E5UrlInfo.E5UrlInfo.ExeOwner?7
+eric5.E5Network.E5UrlInfo.E5UrlInfo.ReadGroup?7
+eric5.E5Network.E5UrlInfo.E5UrlInfo.ReadOther?7
+eric5.E5Network.E5UrlInfo.E5UrlInfo.ReadOwner?7
+eric5.E5Network.E5UrlInfo.E5UrlInfo.WriteGroup?7
+eric5.E5Network.E5UrlInfo.E5UrlInfo.WriteOther?7
+eric5.E5Network.E5UrlInfo.E5UrlInfo.WriteOwner?7
+eric5.E5Network.E5UrlInfo.E5UrlInfo.group?4()
+eric5.E5Network.E5UrlInfo.E5UrlInfo.isDir?4()
+eric5.E5Network.E5UrlInfo.E5UrlInfo.isExecutable?4()
+eric5.E5Network.E5UrlInfo.E5UrlInfo.isFile?4()
+eric5.E5Network.E5UrlInfo.E5UrlInfo.isReadable?4()
+eric5.E5Network.E5UrlInfo.E5UrlInfo.isSymLink?4()
+eric5.E5Network.E5UrlInfo.E5UrlInfo.isValid?4()
+eric5.E5Network.E5UrlInfo.E5UrlInfo.isWritable?4()
+eric5.E5Network.E5UrlInfo.E5UrlInfo.lastModified?4()
+eric5.E5Network.E5UrlInfo.E5UrlInfo.lastRead?4()
+eric5.E5Network.E5UrlInfo.E5UrlInfo.name?4()
+eric5.E5Network.E5UrlInfo.E5UrlInfo.owner?4()
+eric5.E5Network.E5UrlInfo.E5UrlInfo.permissions?4()
+eric5.E5Network.E5UrlInfo.E5UrlInfo.setDir?4(isDir)
+eric5.E5Network.E5UrlInfo.E5UrlInfo.setFile?4(isFile)
+eric5.E5Network.E5UrlInfo.E5UrlInfo.setGroup?4(group)
+eric5.E5Network.E5UrlInfo.E5UrlInfo.setLastModified?4(dt)
+eric5.E5Network.E5UrlInfo.E5UrlInfo.setLastRead?4(dt)
+eric5.E5Network.E5UrlInfo.E5UrlInfo.setName?4(name)
+eric5.E5Network.E5UrlInfo.E5UrlInfo.setOwner?4(owner)
+eric5.E5Network.E5UrlInfo.E5UrlInfo.setPermissions?4(permissions)
+eric5.E5Network.E5UrlInfo.E5UrlInfo.setReadable?4(isReadable)
+eric5.E5Network.E5UrlInfo.E5UrlInfo.setSize?4(size)
+eric5.E5Network.E5UrlInfo.E5UrlInfo.setSymLink?4(isSymLink)
+eric5.E5Network.E5UrlInfo.E5UrlInfo.setWritable?4(isWritable)
+eric5.E5Network.E5UrlInfo.E5UrlInfo.size?4()
+eric5.E5Network.E5UrlInfo.E5UrlInfo?1()
 eric5.E5XML.Config.debuggerPropertiesFileFormatVersion?7
 eric5.E5XML.Config.highlightingStylesFileFormatVersion?7
 eric5.E5XML.Config.multiProjectFileFormatVersion?7
Binary file Documentation/Help/source.qch has changed
--- a/Documentation/Help/source.qhp	Sat Sep 29 19:59:18 2012 +0200
+++ b/Documentation/Help/source.qhp	Sun Sep 30 13:27:28 2012 +0200
@@ -144,6 +144,7 @@
             <section title="eric5.E5Network.E5NetworkHeaderDetailsDialog" ref="eric5.E5Network.E5NetworkHeaderDetailsDialog.html" />
             <section title="eric5.E5Network.E5NetworkMonitor" ref="eric5.E5Network.E5NetworkMonitor.html" />
             <section title="eric5.E5Network.E5NetworkProxyFactory" ref="eric5.E5Network.E5NetworkProxyFactory.html" />
+            <section title="eric5.E5Network.E5UrlInfo" ref="eric5.E5Network.E5UrlInfo.html" />
           </section>
           <section title="eric5.E5XML" ref="index-eric5.E5XML.html">
             <section title="eric5.E5XML.Config" ref="eric5.E5XML.Config.html" />
@@ -3281,6 +3282,7 @@
       <keyword name="E5Application.getPluginObject" id="E5Application.getPluginObject" ref="eric5.E5Gui.E5Application.html#E5Application.getPluginObject" />
       <keyword name="E5Application.getPluginObjectType" id="E5Application.getPluginObjectType" ref="eric5.E5Gui.E5Application.html#E5Application.getPluginObjectType" />
       <keyword name="E5Application.getPluginObjects" id="E5Application.getPluginObjects" ref="eric5.E5Gui.E5Application.html#E5Application.getPluginObjects" />
+      <keyword name="E5Application.palette" id="E5Application.palette" ref="eric5.E5Gui.E5Application.html#E5Application.palette" />
       <keyword name="E5Application.registerObject" id="E5Application.registerObject" ref="eric5.E5Gui.E5Application.html#E5Application.registerObject" />
       <keyword name="E5Application.registerPluginObject" id="E5Application.registerPluginObject" ref="eric5.E5Gui.E5Application.html#E5Application.registerPluginObject" />
       <keyword name="E5Application.unregisterPluginObject" id="E5Application.unregisterPluginObject" ref="eric5.E5Gui.E5Application.html#E5Application.unregisterPluginObject" />
@@ -3705,6 +3707,35 @@
       <keyword name="E5TreeWidget.mousePressEvent" id="E5TreeWidget.mousePressEvent" ref="eric5.E5Gui.E5TreeWidget.html#E5TreeWidget.mousePressEvent" />
       <keyword name="E5TreeWidget.prependToParentItem" id="E5TreeWidget.prependToParentItem" ref="eric5.E5Gui.E5TreeWidget.html#E5TreeWidget.prependToParentItem" />
       <keyword name="E5TreeWidget.setDefaultItemShowMode" id="E5TreeWidget.setDefaultItemShowMode" ref="eric5.E5Gui.E5TreeWidget.html#E5TreeWidget.setDefaultItemShowMode" />
+      <keyword name="E5UrlInfo" id="E5UrlInfo" ref="eric5.E5Network.E5UrlInfo.html#E5UrlInfo" />
+      <keyword name="E5UrlInfo (Constructor)" id="E5UrlInfo (Constructor)" ref="eric5.E5Network.E5UrlInfo.html#E5UrlInfo.__init__" />
+      <keyword name="E5UrlInfo (Module)" id="E5UrlInfo (Module)" ref="eric5.E5Network.E5UrlInfo.html" />
+      <keyword name="E5UrlInfo.group" id="E5UrlInfo.group" ref="eric5.E5Network.E5UrlInfo.html#E5UrlInfo.group" />
+      <keyword name="E5UrlInfo.isDir" id="E5UrlInfo.isDir" ref="eric5.E5Network.E5UrlInfo.html#E5UrlInfo.isDir" />
+      <keyword name="E5UrlInfo.isExecutable" id="E5UrlInfo.isExecutable" ref="eric5.E5Network.E5UrlInfo.html#E5UrlInfo.isExecutable" />
+      <keyword name="E5UrlInfo.isFile" id="E5UrlInfo.isFile" ref="eric5.E5Network.E5UrlInfo.html#E5UrlInfo.isFile" />
+      <keyword name="E5UrlInfo.isReadable" id="E5UrlInfo.isReadable" ref="eric5.E5Network.E5UrlInfo.html#E5UrlInfo.isReadable" />
+      <keyword name="E5UrlInfo.isSymLink" id="E5UrlInfo.isSymLink" ref="eric5.E5Network.E5UrlInfo.html#E5UrlInfo.isSymLink" />
+      <keyword name="E5UrlInfo.isValid" id="E5UrlInfo.isValid" ref="eric5.E5Network.E5UrlInfo.html#E5UrlInfo.isValid" />
+      <keyword name="E5UrlInfo.isWritable" id="E5UrlInfo.isWritable" ref="eric5.E5Network.E5UrlInfo.html#E5UrlInfo.isWritable" />
+      <keyword name="E5UrlInfo.lastModified" id="E5UrlInfo.lastModified" ref="eric5.E5Network.E5UrlInfo.html#E5UrlInfo.lastModified" />
+      <keyword name="E5UrlInfo.lastRead" id="E5UrlInfo.lastRead" ref="eric5.E5Network.E5UrlInfo.html#E5UrlInfo.lastRead" />
+      <keyword name="E5UrlInfo.name" id="E5UrlInfo.name" ref="eric5.E5Network.E5UrlInfo.html#E5UrlInfo.name" />
+      <keyword name="E5UrlInfo.owner" id="E5UrlInfo.owner" ref="eric5.E5Network.E5UrlInfo.html#E5UrlInfo.owner" />
+      <keyword name="E5UrlInfo.permissions" id="E5UrlInfo.permissions" ref="eric5.E5Network.E5UrlInfo.html#E5UrlInfo.permissions" />
+      <keyword name="E5UrlInfo.setDir" id="E5UrlInfo.setDir" ref="eric5.E5Network.E5UrlInfo.html#E5UrlInfo.setDir" />
+      <keyword name="E5UrlInfo.setFile" id="E5UrlInfo.setFile" ref="eric5.E5Network.E5UrlInfo.html#E5UrlInfo.setFile" />
+      <keyword name="E5UrlInfo.setGroup" id="E5UrlInfo.setGroup" ref="eric5.E5Network.E5UrlInfo.html#E5UrlInfo.setGroup" />
+      <keyword name="E5UrlInfo.setLastModified" id="E5UrlInfo.setLastModified" ref="eric5.E5Network.E5UrlInfo.html#E5UrlInfo.setLastModified" />
+      <keyword name="E5UrlInfo.setLastRead" id="E5UrlInfo.setLastRead" ref="eric5.E5Network.E5UrlInfo.html#E5UrlInfo.setLastRead" />
+      <keyword name="E5UrlInfo.setName" id="E5UrlInfo.setName" ref="eric5.E5Network.E5UrlInfo.html#E5UrlInfo.setName" />
+      <keyword name="E5UrlInfo.setOwner" id="E5UrlInfo.setOwner" ref="eric5.E5Network.E5UrlInfo.html#E5UrlInfo.setOwner" />
+      <keyword name="E5UrlInfo.setPermissions" id="E5UrlInfo.setPermissions" ref="eric5.E5Network.E5UrlInfo.html#E5UrlInfo.setPermissions" />
+      <keyword name="E5UrlInfo.setReadable" id="E5UrlInfo.setReadable" ref="eric5.E5Network.E5UrlInfo.html#E5UrlInfo.setReadable" />
+      <keyword name="E5UrlInfo.setSize" id="E5UrlInfo.setSize" ref="eric5.E5Network.E5UrlInfo.html#E5UrlInfo.setSize" />
+      <keyword name="E5UrlInfo.setSymLink" id="E5UrlInfo.setSymLink" ref="eric5.E5Network.E5UrlInfo.html#E5UrlInfo.setSymLink" />
+      <keyword name="E5UrlInfo.setWritable" id="E5UrlInfo.setWritable" ref="eric5.E5Network.E5UrlInfo.html#E5UrlInfo.setWritable" />
+      <keyword name="E5UrlInfo.size" id="E5UrlInfo.size" ref="eric5.E5Network.E5UrlInfo.html#E5UrlInfo.size" />
       <keyword name="E5VerticalToolBox" id="E5VerticalToolBox" ref="eric5.E5Gui.E5ToolBox.html#E5VerticalToolBox" />
       <keyword name="E5VerticalToolBox (Constructor)" id="E5VerticalToolBox (Constructor)" ref="eric5.E5Gui.E5ToolBox.html#E5VerticalToolBox.__init__" />
       <keyword name="E5WheelTabBar" id="E5WheelTabBar" ref="eric5.E5Gui.E5TabWidget.html#E5WheelTabBar" />
@@ -12529,6 +12560,7 @@
       <file>eric5.E5Network.E5NetworkHeaderDetailsDialog.html</file>
       <file>eric5.E5Network.E5NetworkMonitor.html</file>
       <file>eric5.E5Network.E5NetworkProxyFactory.html</file>
+      <file>eric5.E5Network.E5UrlInfo.html</file>
       <file>eric5.E5XML.Config.html</file>
       <file>eric5.E5XML.DebuggerPropertiesReader.html</file>
       <file>eric5.E5XML.DebuggerPropertiesWriter.html</file>
--- a/Documentation/Source/eric5.E5Gui.E5Application.html	Sat Sep 29 19:59:18 2012 +0200
+++ b/Documentation/Source/eric5.E5Gui.E5Application.html	Sun Sep 30 13:27:28 2012 +0200
@@ -85,7 +85,10 @@
 </table>
 <h3>Static Methods</h3>
 <table>
-<tr><td>None</td></tr>
+<tr>
+<td><a href="#E5Application.palette">palette</a></td>
+<td>Static method to get compatibility between Qt4 QApplication and Qt5 QGuiApplication.</td>
+</tr>
 </table>
 <a NAME="E5Application.__init__" ID="E5Application.__init__"></a>
 <h4>E5Application (Constructor)</h4>
@@ -217,6 +220,17 @@
 <dd>
 name of the plugin object (string)
 </dd>
+</dl><a NAME="E5Application.palette" ID="E5Application.palette"></a>
+<h4>E5Application.palette (static)</h4>
+<b>palette</b>(<i></i>)
+<p>
+        Static method to get compatibility between Qt4 QApplication and
+        Qt5 QGuiApplication.
+</p><dl>
+<dt>Returns:</dt>
+<dd>
+reference to the global palette (QPalette)
+</dd>
 </dl>
 <div align="right"><a href="#top">Up</a></div>
 <hr />
--- a/Documentation/Source/eric5.E5Network.E5Ftp.html	Sat Sep 29 19:59:18 2012 +0200
+++ b/Documentation/Source/eric5.E5Network.E5Ftp.html	Sun Sep 30 13:27:28 2012 +0200
@@ -174,24 +174,24 @@
         </table>
 </p><p>
         <dl>
-          <dt>E5FtpProxyType.NoProxy</dt>
+          <dt>E5FtpProxyType.NoProxy:</dt>
           <dd>
             USER user<br/>
             PASS pass
           </dd>
-          <dt>E5FtpProxyType.NonAuthorizing</dt>
+          <dt>E5FtpProxyType.NonAuthorizing:</dt>
           <dd>
             USER user@remote.host<br/>
             PASS pass
           </dd>
-          <dt>E5FtpProxyType.UserAtServer</dt>
+          <dt>E5FtpProxyType.UserAtServer:</dt>
           <dd>
             USER pruser<br/>
             PASS prpass<br/>
             USER user@remote.host<br/>
             PASS pass
           </dd>
-          <dt>E5FtpProxyType.Site</dt>
+          <dt>E5FtpProxyType.Site:</dt>
           <dd>
             USER pruser<br/>
             PASS prpass<br/>
@@ -199,7 +199,7 @@
             USER user<br/>
             PASS pass
           </dd>
-          <dt>E5FtpProxyType.Open</dt>
+          <dt>E5FtpProxyType.Open:</dt>
           <dd>
             USER pruser<br/>
             PASS prpass<br/>
@@ -207,26 +207,26 @@
             USER user<br/>
             PASS pass
           </dd>
-          <dt>E5FtpProxyType.UserAtProxyuserAtServer</dt>
+          <dt>E5FtpProxyType.UserAtProxyuserAtServer:</dt>
           <dd>
             USER user@pruser@remote.host<br/>
             PASS pass@prpass
           </dd>
-          <dt>E5FtpProxyType.ProxyuserAtServer</dt>
+          <dt>E5FtpProxyType.ProxyuserAtServer:</dt>
           <dd>
             USER pruser@remote.host<br/>
             PASS prpass<br/>
             USER user<br/>
             PASS pass
           </dd>
-          <dt>E5FtpProxyType.AuthResp</dt>
+          <dt>E5FtpProxyType.AuthResp:</dt>
           <dd>
             USER user@remote.host<br/>
             PASS pass<br/>
             AUTH pruser<br/>
             RESP prpass
           </dd>
-          <dt>E5FtpProxyType.Bluecoat</dt>
+          <dt>E5FtpProxyType.Bluecoat:</dt>
           <dd>
             USER user@remote.host pruser<br/>
             PASS pass<br/>
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/Documentation/Source/eric5.E5Network.E5UrlInfo.html	Sun Sep 30 13:27:28 2012 +0200
@@ -0,0 +1,415 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!DOCTYPE html PUBLIC '-//W3C//DTD XHTML 1.0 Strict//EN'
+'http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd'>
+<html><head>
+<title>eric5.E5Network.E5UrlInfo</title>
+<style>
+body {
+    background: #EDECE6;
+    margin: 0em 1em 10em 1em;
+    color: black;
+}
+
+h1 { color: white; background: #85774A; }
+h2 { color: white; background: #85774A; }
+h3 { color: white; background: #9D936E; }
+h4 { color: white; background: #9D936E; }
+    
+a { color: #BA6D36; }
+
+</style>
+</head>
+<body><a NAME="top" ID="top"></a>
+<h1>eric5.E5Network.E5UrlInfo</h1>
+<p>
+Module implementing a class replacing QUrlInfo.
+</p>
+<h3>Global Attributes</h3>
+<table>
+<tr><td>None</td></tr>
+</table>
+<h3>Classes</h3>
+<table>
+<tr>
+<td><a href="#E5UrlInfo">E5UrlInfo</a></td>
+<td>Class implementing a replacement for QUrlInfo.</td>
+</tr>
+</table>
+<h3>Functions</h3>
+<table>
+<tr><td>None</td></tr>
+</table>
+<hr /><hr />
+<a NAME="E5UrlInfo" ID="E5UrlInfo"></a>
+<h2>E5UrlInfo</h2>
+<p>
+    Class implementing a replacement for QUrlInfo.
+</p>
+<h3>Derived from</h3>
+object
+<h3>Class Attributes</h3>
+<table>
+<tr><td>ExeGroup</td></tr><tr><td>ExeOther</td></tr><tr><td>ExeOwner</td></tr><tr><td>ReadGroup</td></tr><tr><td>ReadOther</td></tr><tr><td>ReadOwner</td></tr><tr><td>WriteGroup</td></tr><tr><td>WriteOther</td></tr><tr><td>WriteOwner</td></tr>
+</table>
+<h3>Class Methods</h3>
+<table>
+<tr><td>None</td></tr>
+</table>
+<h3>Methods</h3>
+<table>
+<tr>
+<td><a href="#E5UrlInfo.__init__">E5UrlInfo</a></td>
+<td>Constructor</td>
+</tr><tr>
+<td><a href="#E5UrlInfo.group">group</a></td>
+<td>Public method to get the group.</td>
+</tr><tr>
+<td><a href="#E5UrlInfo.isDir">isDir</a></td>
+<td>Public method to test, if the entry is a directory.</td>
+</tr><tr>
+<td><a href="#E5UrlInfo.isExecutable">isExecutable</a></td>
+<td>Public method to test, if the entry is executable.</td>
+</tr><tr>
+<td><a href="#E5UrlInfo.isFile">isFile</a></td>
+<td>Public method to test, if the entry is a file.</td>
+</tr><tr>
+<td><a href="#E5UrlInfo.isReadable">isReadable</a></td>
+<td>Public method to test, if the entry is readable.</td>
+</tr><tr>
+<td><a href="#E5UrlInfo.isSymLink">isSymLink</a></td>
+<td>Public method to test, if the entry is a symbolic link.</td>
+</tr><tr>
+<td><a href="#E5UrlInfo.isValid">isValid</a></td>
+<td>Public method to check the validity of the object.</td>
+</tr><tr>
+<td><a href="#E5UrlInfo.isWritable">isWritable</a></td>
+<td>Public method to test, if the entry is writable.</td>
+</tr><tr>
+<td><a href="#E5UrlInfo.lastModified">lastModified</a></td>
+<td>Public method to get the last modified date and time.</td>
+</tr><tr>
+<td><a href="#E5UrlInfo.lastRead">lastRead</a></td>
+<td>Public method to get the last read date and time.</td>
+</tr><tr>
+<td><a href="#E5UrlInfo.name">name</a></td>
+<td>Public method to get the name.</td>
+</tr><tr>
+<td><a href="#E5UrlInfo.owner">owner</a></td>
+<td>Public method to get the owner.</td>
+</tr><tr>
+<td><a href="#E5UrlInfo.permissions">permissions</a></td>
+<td>Public method to get the permissions.</td>
+</tr><tr>
+<td><a href="#E5UrlInfo.setDir">setDir</a></td>
+<td>Public method to indicate a directory.</td>
+</tr><tr>
+<td><a href="#E5UrlInfo.setFile">setFile</a></td>
+<td>Public method to indicate a file.</td>
+</tr><tr>
+<td><a href="#E5UrlInfo.setGroup">setGroup</a></td>
+<td>Public method to set the group.</td>
+</tr><tr>
+<td><a href="#E5UrlInfo.setLastModified">setLastModified</a></td>
+<td>Public method to set the last modified date and time.</td>
+</tr><tr>
+<td><a href="#E5UrlInfo.setLastRead">setLastRead</a></td>
+<td>Public method to set the last read date and time.</td>
+</tr><tr>
+<td><a href="#E5UrlInfo.setName">setName</a></td>
+<td>Public method to set the name.</td>
+</tr><tr>
+<td><a href="#E5UrlInfo.setOwner">setOwner</a></td>
+<td>Public method to set the owner.</td>
+</tr><tr>
+<td><a href="#E5UrlInfo.setPermissions">setPermissions</a></td>
+<td>Public method to set the permissions.</td>
+</tr><tr>
+<td><a href="#E5UrlInfo.setReadable">setReadable</a></td>
+<td>Public method to a readable entry.</td>
+</tr><tr>
+<td><a href="#E5UrlInfo.setSize">setSize</a></td>
+<td>Public method to set the size.</td>
+</tr><tr>
+<td><a href="#E5UrlInfo.setSymLink">setSymLink</a></td>
+<td>Public method to indicate a symbolic link.</td>
+</tr><tr>
+<td><a href="#E5UrlInfo.setWritable">setWritable</a></td>
+<td>Public method to a writable entry.</td>
+</tr><tr>
+<td><a href="#E5UrlInfo.size">size</a></td>
+<td>Public method to get the size.</td>
+</tr>
+</table>
+<h3>Static Methods</h3>
+<table>
+<tr><td>None</td></tr>
+</table>
+<a NAME="E5UrlInfo.__init__" ID="E5UrlInfo.__init__"></a>
+<h4>E5UrlInfo (Constructor)</h4>
+<b>E5UrlInfo</b>(<i></i>)
+<p>
+        Constructor
+</p><a NAME="E5UrlInfo.group" ID="E5UrlInfo.group"></a>
+<h4>E5UrlInfo.group</h4>
+<b>group</b>(<i></i>)
+<p>
+        Public method to get the group.
+</p><dl>
+<dt>Returns:</dt>
+<dd>
+group (string)
+</dd>
+</dl><a NAME="E5UrlInfo.isDir" ID="E5UrlInfo.isDir"></a>
+<h4>E5UrlInfo.isDir</h4>
+<b>isDir</b>(<i></i>)
+<p>
+        Public method to test, if the entry is a directory.
+</p><dl>
+<dt>Returns:</dt>
+<dd>
+flag indicating a directory (boolean)
+</dd>
+</dl><a NAME="E5UrlInfo.isExecutable" ID="E5UrlInfo.isExecutable"></a>
+<h4>E5UrlInfo.isExecutable</h4>
+<b>isExecutable</b>(<i></i>)
+<p>
+        Public method to test, if the entry is executable.
+</p><dl>
+<dt>Returns:</dt>
+<dd>
+flag indicating executable (boolean)
+</dd>
+</dl><a NAME="E5UrlInfo.isFile" ID="E5UrlInfo.isFile"></a>
+<h4>E5UrlInfo.isFile</h4>
+<b>isFile</b>(<i></i>)
+<p>
+        Public method to test, if the entry is a file.
+</p><dl>
+<dt>Returns:</dt>
+<dd>
+flag indicating a file (boolean)
+</dd>
+</dl><a NAME="E5UrlInfo.isReadable" ID="E5UrlInfo.isReadable"></a>
+<h4>E5UrlInfo.isReadable</h4>
+<b>isReadable</b>(<i></i>)
+<p>
+        Public method to test, if the entry is readable.
+</p><dl>
+<dt>Returns:</dt>
+<dd>
+flag indicating readable (boolean)
+</dd>
+</dl><a NAME="E5UrlInfo.isSymLink" ID="E5UrlInfo.isSymLink"></a>
+<h4>E5UrlInfo.isSymLink</h4>
+<b>isSymLink</b>(<i></i>)
+<p>
+        Public method to test, if the entry is a symbolic link.
+</p><dl>
+<dt>Returns:</dt>
+<dd>
+flag indicating a symbolic link (boolean)
+</dd>
+</dl><a NAME="E5UrlInfo.isValid" ID="E5UrlInfo.isValid"></a>
+<h4>E5UrlInfo.isValid</h4>
+<b>isValid</b>(<i></i>)
+<p>
+        Public method to check the validity of the object.
+</p><dl>
+<dt>Returns:</dt>
+<dd>
+flag indicating validity (boolean)
+</dd>
+</dl><a NAME="E5UrlInfo.isWritable" ID="E5UrlInfo.isWritable"></a>
+<h4>E5UrlInfo.isWritable</h4>
+<b>isWritable</b>(<i></i>)
+<p>
+        Public method to test, if the entry is writable.
+</p><dl>
+<dt>Returns:</dt>
+<dd>
+flag indicating writable (boolean)
+</dd>
+</dl><a NAME="E5UrlInfo.lastModified" ID="E5UrlInfo.lastModified"></a>
+<h4>E5UrlInfo.lastModified</h4>
+<b>lastModified</b>(<i></i>)
+<p>
+        Public method to get the last modified date and time.
+</p><dl>
+<dt>Returns:</dt>
+<dd>
+last modified date and time (QDateTime)
+</dd>
+</dl><a NAME="E5UrlInfo.lastRead" ID="E5UrlInfo.lastRead"></a>
+<h4>E5UrlInfo.lastRead</h4>
+<b>lastRead</b>(<i></i>)
+<p>
+        Public method to get the last read date and time.
+</p><dl>
+<dt>Returns:</dt>
+<dd>
+last read date and time (QDateTime)
+</dd>
+</dl><a NAME="E5UrlInfo.name" ID="E5UrlInfo.name"></a>
+<h4>E5UrlInfo.name</h4>
+<b>name</b>(<i></i>)
+<p>
+        Public method to get the name.
+</p><dl>
+<dt>Returns:</dt>
+<dd>
+name (string)
+</dd>
+</dl><a NAME="E5UrlInfo.owner" ID="E5UrlInfo.owner"></a>
+<h4>E5UrlInfo.owner</h4>
+<b>owner</b>(<i></i>)
+<p>
+        Public method to get the owner.
+</p><dl>
+<dt>Returns:</dt>
+<dd>
+owner (string)
+</dd>
+</dl><a NAME="E5UrlInfo.permissions" ID="E5UrlInfo.permissions"></a>
+<h4>E5UrlInfo.permissions</h4>
+<b>permissions</b>(<i></i>)
+<p>
+        Public method to get the permissions.
+</p><dl>
+<dt>Returns:</dt>
+<dd>
+permissions (integer)
+</dd>
+</dl><a NAME="E5UrlInfo.setDir" ID="E5UrlInfo.setDir"></a>
+<h4>E5UrlInfo.setDir</h4>
+<b>setDir</b>(<i>isDir</i>)
+<p>
+        Public method to indicate a directory.
+</p><dl>
+<dt><i>isDir</i></dt>
+<dd>
+flag indicating a directory (boolean)
+</dd>
+</dl><a NAME="E5UrlInfo.setFile" ID="E5UrlInfo.setFile"></a>
+<h4>E5UrlInfo.setFile</h4>
+<b>setFile</b>(<i>isFile</i>)
+<p>
+        Public method to indicate a file.
+</p><dl>
+<dt><i>isFile</i></dt>
+<dd>
+flag indicating a file (boolean)
+</dd>
+</dl><a NAME="E5UrlInfo.setGroup" ID="E5UrlInfo.setGroup"></a>
+<h4>E5UrlInfo.setGroup</h4>
+<b>setGroup</b>(<i>group</i>)
+<p>
+        Public method to set the group.
+</p><dl>
+<dt><i>group</i></dt>
+<dd>
+group to be set (string)
+</dd>
+</dl><a NAME="E5UrlInfo.setLastModified" ID="E5UrlInfo.setLastModified"></a>
+<h4>E5UrlInfo.setLastModified</h4>
+<b>setLastModified</b>(<i>dt</i>)
+<p>
+        Public method to set the last modified date and time.
+</p><dl>
+<dt><i>dt</i></dt>
+<dd>
+date and time to set (QDateTime)
+</dd>
+</dl><a NAME="E5UrlInfo.setLastRead" ID="E5UrlInfo.setLastRead"></a>
+<h4>E5UrlInfo.setLastRead</h4>
+<b>setLastRead</b>(<i>dt</i>)
+<p>
+        Public method to set the last read date and time.
+</p><dl>
+<dt><i>dt</i></dt>
+<dd>
+date and time to set (QDateTime)
+</dd>
+</dl><a NAME="E5UrlInfo.setName" ID="E5UrlInfo.setName"></a>
+<h4>E5UrlInfo.setName</h4>
+<b>setName</b>(<i>name</i>)
+<p>
+        Public method to set the name.
+</p><dl>
+<dt><i>name</i></dt>
+<dd>
+name to be set (string)
+</dd>
+</dl><a NAME="E5UrlInfo.setOwner" ID="E5UrlInfo.setOwner"></a>
+<h4>E5UrlInfo.setOwner</h4>
+<b>setOwner</b>(<i>owner</i>)
+<p>
+        Public method to set the owner.
+</p><dl>
+<dt><i>owner</i></dt>
+<dd>
+owner to be set (string)
+</dd>
+</dl><a NAME="E5UrlInfo.setPermissions" ID="E5UrlInfo.setPermissions"></a>
+<h4>E5UrlInfo.setPermissions</h4>
+<b>setPermissions</b>(<i>permissions</i>)
+<p>
+        Public method to set the permissions.
+</p><dl>
+<dt><i>permissions</i></dt>
+<dd>
+permissions to be set (integer)
+</dd>
+</dl><a NAME="E5UrlInfo.setReadable" ID="E5UrlInfo.setReadable"></a>
+<h4>E5UrlInfo.setReadable</h4>
+<b>setReadable</b>(<i>isReadable</i>)
+<p>
+        Public method to a readable entry.
+</p><dl>
+<dt><i>isReadable</i></dt>
+<dd>
+flag indicating a readable entry (boolean)
+</dd>
+</dl><a NAME="E5UrlInfo.setSize" ID="E5UrlInfo.setSize"></a>
+<h4>E5UrlInfo.setSize</h4>
+<b>setSize</b>(<i>size</i>)
+<p>
+        Public method to set the size.
+</p><dl>
+<dt><i>size</i></dt>
+<dd>
+size to be set (integer)
+</dd>
+</dl><a NAME="E5UrlInfo.setSymLink" ID="E5UrlInfo.setSymLink"></a>
+<h4>E5UrlInfo.setSymLink</h4>
+<b>setSymLink</b>(<i>isSymLink</i>)
+<p>
+        Public method to indicate a symbolic link.
+</p><dl>
+<dt><i>isSymLink</i></dt>
+<dd>
+flag indicating a symbolic link (boolean)
+</dd>
+</dl><a NAME="E5UrlInfo.setWritable" ID="E5UrlInfo.setWritable"></a>
+<h4>E5UrlInfo.setWritable</h4>
+<b>setWritable</b>(<i>isWritable</i>)
+<p>
+        Public method to a writable entry.
+</p><dl>
+<dt><i>isWritable</i></dt>
+<dd>
+flag indicating a writable entry (boolean)
+</dd>
+</dl><a NAME="E5UrlInfo.size" ID="E5UrlInfo.size"></a>
+<h4>E5UrlInfo.size</h4>
+<b>size</b>(<i></i>)
+<p>
+        Public method to get the size.
+</p><dl>
+<dt>Returns:</dt>
+<dd>
+size (integer)
+</dd>
+</dl>
+<div align="right"><a href="#top">Up</a></div>
+<hr />
+</body></html>
\ No newline at end of file
--- a/Documentation/Source/eric5.Utilities.FtpUtilities.html	Sat Sep 29 19:59:18 2012 +0200
+++ b/Documentation/Source/eric5.Utilities.FtpUtilities.html	Sun Sep 30 13:27:28 2012 +0200
@@ -131,7 +131,7 @@
 </dl><dl>
 <dt>Returns:</dt>
 <dd>
-URL info object containing the valid data (QUrlInfo)
+URL info object containing the valid data (E5UrlInfo)
 </dd>
 </dl><dl>
 <dt>Raises <b>FtpDirLineParserError</b>:</dt>
@@ -151,7 +151,7 @@
 mode string to be parsed (string)
 </dd><dt><i>urlInfo</i></dt>
 <dd>
-reference to the URL info object (QUrlInfo)
+reference to the URL info object (E5UrlInfo)
 </dd>
 </dl><dl>
 <dt>Raises <b>FtpDirLineParserError</b>:</dt>
@@ -185,7 +185,7 @@
 string giving the year or a time (string)
 </dd><dt><i>urlInfo</i></dt>
 <dd>
-reference to the URL info object (QUrlInfo)
+reference to the URL info object (E5UrlInfo)
 </dd>
 </dl><dl>
 <dt>Raises <b>FtpDirLineParserError</b>:</dt>
@@ -206,7 +206,7 @@
 </dl><dl>
 <dt>Returns:</dt>
 <dd>
-URL info object containing the valid data (QUrlInfo)
+URL info object containing the valid data (E5UrlInfo)
 </dd>
 </dl><dl>
 <dt>Raises <b>FtpDirLineParserError</b>:</dt>
@@ -233,7 +233,7 @@
 time string (string)
 </dd><dt><i>urlInfo</i></dt>
 <dd>
-reference to the URL info object (QUrlInfo)
+reference to the URL info object (E5UrlInfo)
 </dd>
 </dl><dl>
 <dt>Raises <b>FtpDirLineParserError</b>:</dt>
@@ -278,7 +278,7 @@
 </dl><dl>
 <dt>Returns:</dt>
 <dd>
-URL info object containing the valid data (QUrlInfo)
+URL info object containing the valid data (E5UrlInfo)
 </dd>
 </dl><dl>
 <dt>Raises <b>FtpDirLineParserError</b>:</dt>
--- a/Documentation/Source/index-eric5.E5Network.html	Sat Sep 29 19:59:18 2012 +0200
+++ b/Documentation/Source/index-eric5.E5Network.html	Sun Sep 30 13:27:28 2012 +0200
@@ -40,6 +40,9 @@
 </tr><tr>
 <td><a href="eric5.E5Network.E5NetworkProxyFactory.html">E5NetworkProxyFactory</a></td>
 <td>Module implementing a network proxy factory.</td>
+</tr><tr>
+<td><a href="eric5.E5Network.E5UrlInfo.html">E5UrlInfo</a></td>
+<td>Module implementing a class replacing QUrlInfo.</td>
 </tr>
 </table>
 </body></html>
\ No newline at end of file
--- a/E5Gui/E5Application.py	Sat Sep 29 19:59:18 2012 +0200
+++ b/E5Gui/E5Application.py	Sun Sep 30 13:27:28 2012 +0200
@@ -112,5 +112,19 @@
             return self.__pluginObjectRegistry[name][1]
         else:
             raise KeyError('Pluginobject "{0}" is not registered.'.format(name))
+        
+    @staticmethod
+    def palette():
+        """
+        Static method to get compatibility between Qt4 QApplication and
+        Qt5 QGuiApplication.
+        
+        @return reference to the global palette (QPalette)
+        """
+        try:
+            from PyQt4.QtGui import QGuiApplication
+            return QGuiApplication.palette()
+        except ImportError:
+            return QApplication.palette()
 
 e5App = QCoreApplication.instance
--- a/E5Gui/E5LineEdit.py	Sat Sep 29 19:59:18 2012 +0200
+++ b/E5Gui/E5LineEdit.py	Sun Sep 30 13:27:28 2012 +0200
@@ -8,8 +8,12 @@
 """
 
 from PyQt4.QtCore import pyqtSignal, Qt, QEvent, qVersion
-from PyQt4.QtGui import QLineEdit, QStyleOptionFrameV2, QStyle, QPainter, QPalette, \
+from PyQt4.QtGui import QLineEdit, QStyle, QPainter, QPalette, \
     QWidget, QHBoxLayout, QBoxLayout, QLayout, QApplication, QSpacerItem, QSizePolicy
+try:
+    from PyQt4.QtGui import QStyleOptionFrameV2
+except ImportError:
+    from PyQt4.QtGui import QStyleOptionFrame as QStyleOptionFrameV2  # __IGNORE_WARNING__
 
 
 class SideWidget(QWidget):
--- a/E5Network/E5Ftp.py	Sat Sep 29 19:59:18 2012 +0200
+++ b/E5Network/E5Ftp.py	Sun Sep 30 13:27:28 2012 +0200
@@ -172,24 +172,24 @@
         </table>
         
         <dl>
-          <dt>E5FtpProxyType.NoProxy</dt>
+          <dt>E5FtpProxyType.NoProxy:</dt>
           <dd>
             USER user<br/>
             PASS pass
           </dd>
-          <dt>E5FtpProxyType.NonAuthorizing</dt>
+          <dt>E5FtpProxyType.NonAuthorizing:</dt>
           <dd>
             USER user@remote.host<br/>
             PASS pass
           </dd>
-          <dt>E5FtpProxyType.UserAtServer</dt>
+          <dt>E5FtpProxyType.UserAtServer:</dt>
           <dd>
             USER pruser<br/>
             PASS prpass<br/>
             USER user@remote.host<br/>
             PASS pass
           </dd>
-          <dt>E5FtpProxyType.Site</dt>
+          <dt>E5FtpProxyType.Site:</dt>
           <dd>
             USER pruser<br/>
             PASS prpass<br/>
@@ -197,7 +197,7 @@
             USER user<br/>
             PASS pass
           </dd>
-          <dt>E5FtpProxyType.Open</dt>
+          <dt>E5FtpProxyType.Open:</dt>
           <dd>
             USER pruser<br/>
             PASS prpass<br/>
@@ -205,26 +205,26 @@
             USER user<br/>
             PASS pass
           </dd>
-          <dt>E5FtpProxyType.UserAtProxyuserAtServer</dt>
+          <dt>E5FtpProxyType.UserAtProxyuserAtServer:</dt>
           <dd>
             USER user@pruser@remote.host<br/>
             PASS pass@prpass
           </dd>
-          <dt>E5FtpProxyType.ProxyuserAtServer</dt>
+          <dt>E5FtpProxyType.ProxyuserAtServer:</dt>
           <dd>
             USER pruser@remote.host<br/>
             PASS prpass<br/>
             USER user<br/>
             PASS pass
           </dd>
-          <dt>E5FtpProxyType.AuthResp</dt>
+          <dt>E5FtpProxyType.AuthResp:</dt>
           <dd>
             USER user@remote.host<br/>
             PASS pass<br/>
             AUTH pruser<br/>
             RESP prpass
           </dd>
-          <dt>E5FtpProxyType.Bluecoat</dt>
+          <dt>E5FtpProxyType.Bluecoat:</dt>
           <dd>
             USER user@remote.host pruser<br/>
             PASS pass<br/>
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/E5Network/E5UrlInfo.py	Sun Sep 30 13:27:28 2012 +0200
@@ -0,0 +1,265 @@
+# -*- coding: utf-8 -*-
+
+# Copyright (c) 2012 Detlev Offenbach <detlev@die-offenbachs.de>
+#
+
+"""
+Module implementing a class replacing QUrlInfo.
+"""
+
+from PyQt4.QtCore import QDateTime
+
+
+class E5UrlInfo(object):
+    """
+    Class implementing a replacement for QUrlInfo.
+    """
+    ReadOwner = 0o0400
+    WriteOwner = 0o0200
+    ExeOwner = 0o0100
+    ReadGroup = 0o0040
+    WriteGroup = 0o0020
+    ExeGroup = 0o0010
+    ReadOther = 0o0004
+    WriteOther = 0o0002
+    ExeOther = 0o0001
+    
+    def __init__(self):
+        """
+        Constructor
+        """
+        self.__valid = False
+        
+        self.__permissions = 0
+        self.__size = 0
+        self.__isDir = False
+        self.__isFile = True
+        self.__isSymlink = False
+        self.__isWritable = True
+        self.__isReadable = True
+        self.__isExecutable = False
+        self.__name = ""
+        self.__owner = ""
+        self.__group = ""
+        self.__lastModified = QDateTime()
+        self.__lastRead = QDateTime()
+    
+    def isValid(self):
+        """
+        Public method to check the validity of the object.
+        
+        @return flag indicating validity (boolean)
+        """
+        return self.__valid
+    
+    def setName(self, name):
+        """
+        Public method to set the name.
+        
+        @param name name to be set (string)
+        """
+        self.__name = name
+        self.__valid = True
+    
+    def setPermissions(self, permissions):
+        """
+        Public method to set the permissions.
+        
+        @param permissions permissions to be set (integer)
+        """
+        self.__permissions = permissions
+        self.__valid = True
+    
+    def setDir(self, isDir):
+        """
+        Public method to indicate a directory.
+        
+        @param isDir flag indicating a directory (boolean)
+        """
+        self.__isDir = isDir
+        self.__valid = True
+    
+    def setFile(self, isFile):
+        """
+        Public method to indicate a file.
+        
+        @param isFile flag indicating a file (boolean)
+        """
+        self.__isFile = isFile
+        self.__valid = True
+    
+    def setSymLink(self, isSymLink):
+        """
+        Public method to indicate a symbolic link.
+        
+        @param isSymLink flag indicating a symbolic link (boolean)
+        """
+        self.__isSymLink = isSymLink
+        self.__valid = True
+    
+    def setOwner(self, owner):
+        """
+        Public method to set the owner.
+        
+        @param owner owner to be set (string)
+        """
+        self.__owner = owner
+        self.__valid = True
+    
+    def setGroup(self, group):
+        """
+        Public method to set the group.
+        
+        @param group group to be set (string)
+        """
+        self.__group = group
+        self.__valid = True
+    
+    def setSize(self, size):
+        """
+        Public method to set the size.
+        
+        @param size size to be set (integer)
+        """
+        self.__size = size
+        self.__valid = True
+    
+    def setWritable(self, isWritable):
+        """
+        Public method to a writable entry.
+        
+        @param isWritable flag indicating a writable entry (boolean)
+        """
+        self.__isWritable = isWritable
+        self.__valid = True
+    
+    def setReadable(self, isReadable):
+        """
+        Public method to a readable entry.
+        
+        @param isReadable flag indicating a readable entry (boolean)
+        """
+        self.__isReadable = isReadable
+        self.__valid = True
+    
+    def setLastModified(self, dt):
+        """
+        Public method to set the last modified date and time.
+        
+        @param dt date and time to set (QDateTime)
+        """
+        self.__lastModified = QDateTime(dt)
+        self.__valid = True
+    
+    def setLastRead(self, dt):
+        """
+        Public method to set the last read date and time.
+        
+        @param dt date and time to set (QDateTime)
+        """
+        self.__lastRead = QDateTime(dt)
+        self.__valid = True
+    
+    def name(self):
+        """
+        Public method to get the name.
+        
+        @return name (string)
+        """
+        return self.__name
+    
+    def permissions(self):
+        """
+        Public method to get the permissions.
+        
+        @return permissions (integer)
+        """
+        return self.__permissions
+    
+    def owner(self):
+        """
+        Public method to get the owner.
+        
+        @return owner (string)
+        """
+        return self.__owner
+    
+    def group(self):
+        """
+        Public method to get the group.
+        
+        @return group (string)
+        """
+        return self.__group
+    
+    def size(self):
+        """
+        Public method to get the size.
+        
+        @return size (integer)
+        """
+        return self.__size
+    
+    def lastModified(self):
+        """
+        Public method to get the last modified date and time.
+        
+        @return last modified date and time (QDateTime)
+        """
+        return QDateTime(self.__lastModified)
+    
+    def lastRead(self):
+        """
+        Public method to get the last read date and time.
+        
+        @return last read date and time (QDateTime)
+        """
+        return QDateTime(self.__lastRead)
+    
+    def isDir(self):
+        """
+        Public method to test, if the entry is a directory.
+        
+        @return flag indicating a directory (boolean)
+        """
+        return self.__isDir
+    
+    def isFile(self):
+        """
+        Public method to test, if the entry is a file.
+        
+        @return flag indicating a file (boolean)
+        """
+        return self.__isFile
+    
+    def isSymLink(self):
+        """
+        Public method to test, if the entry is a symbolic link.
+        
+        @return flag indicating a symbolic link (boolean)
+        """
+        return self.__isSymlink
+    
+    def isWritable(self):
+        """
+        Public method to test, if the entry is writable.
+        
+        @return flag indicating writable (boolean)
+        """
+        return self.__isWritable
+    
+    def isReadable(self):
+        """
+        Public method to test, if the entry is readable.
+        
+        @return flag indicating readable (boolean)
+        """
+        return self.__isReadable
+    
+    def isExecutable(self):
+        """
+        Public method to test, if the entry is executable.
+        
+        @return flag indicating executable (boolean)
+        """
+        return self.__isExecutable
--- a/Helpviewer/GreaseMonkey/GreaseMonkeyConfiguration/GreaseMonkeyConfigurationListDelegate.py	Sat Sep 29 19:59:18 2012 +0200
+++ b/Helpviewer/GreaseMonkey/GreaseMonkeyConfiguration/GreaseMonkeyConfigurationListDelegate.py	Sun Sep 30 13:27:28 2012 +0200
@@ -8,8 +8,12 @@
 """
 
 from PyQt4.QtCore import Qt, QSize, QRect
-from PyQt4.QtGui import QStyle, QStyledItemDelegate, QStyleOptionViewItemV4, \
-    QApplication, QFontMetrics, QPalette, QFont
+from PyQt4.QtGui import QStyle, QStyledItemDelegate, QApplication, QFontMetrics, \
+    QPalette, QFont
+try:
+    from PyQt4.QtGui import QStyleOptionViewItemV4
+except ImportError:
+    from PyQt4.QtGui import QStyleOptionViewItem as QStyleOptionViewItemV4  # __IGNORE_WARNING__
 
 import UI.PixmapCache
 import Globals
--- a/Helpviewer/Sync/FtpSyncHandler.py	Sat Sep 29 19:59:18 2012 +0200
+++ b/Helpviewer/Sync/FtpSyncHandler.py	Sun Sep 30 13:27:28 2012 +0200
@@ -105,7 +105,7 @@
                 self.__initialSync()
                 self.__state = "idle"
                 self.__idleTimer.start()
-        except (ftplib.all_errors, E5FtpProxyError) as err:
+        except (ftplib.all_errors + (E5FtpProxyError,)) as err:
             self.syncError.emit(str(err))
     
     def __connectAndLogin(self):
--- a/Helpviewer/UrlBar/UrlBar.py	Sat Sep 29 19:59:18 2012 +0200
+++ b/Helpviewer/UrlBar/UrlBar.py	Sun Sep 30 13:27:28 2012 +0200
@@ -8,7 +8,7 @@
 """
 
 from PyQt4.QtCore import pyqtSlot, Qt, QPointF, QUrl, QDateTime
-from PyQt4.QtGui import QColor, QPalette, QApplication, QLinearGradient, QIcon, QDialog
+from PyQt4.QtGui import QColor, QPalette, QLinearGradient, QIcon, QDialog
 try:
     from PyQt4.QtNetwork import QSslCertificate     # __IGNORE_EXCEPTION__
 except ImportError:
@@ -17,6 +17,7 @@
 
 from E5Gui.E5LineEdit import E5LineEdit
 from E5Gui.E5LineEditButton import E5LineEditButton
+from E5Gui.E5Application import E5Application
 
 import Helpviewer.HelpWindow
 
@@ -264,8 +265,8 @@
             backgroundColor = QColor(220, 220, 220)     # light gray
             foregroundColor = Qt.black
         else:
-            backgroundColor = QApplication.palette().color(QPalette.Base)
-            foregroundColor = QApplication.palette().color(QPalette.Text)
+            backgroundColor = E5Application.palette().color(QPalette.Base)
+            foregroundColor = E5Application.palette().color(QPalette.Text)
         
         if self.__browser is not None:
             p = self.palette()
@@ -286,7 +287,7 @@
                             backgroundColor = Preferences.getHelp("SaveUrlColor")
                     else:
                         backgroundColor = Preferences.getHelp("SaveUrlColor")
-                highlight = QApplication.palette().color(QPalette.Highlight)
+                highlight = E5Application.palette().color(QPalette.Highlight)
                 r = (highlight.red() + 2 * backgroundColor.red()) // 3
                 g = (highlight.green() + 2 * backgroundColor.green()) // 3
                 b = (highlight.blue() + 2 * backgroundColor.blue()) // 3
--- a/Preferences/__init__.py	Sat Sep 29 19:59:18 2012 +0200
+++ b/Preferences/__init__.py	Sun Sep 30 13:27:28 2012 +0200
@@ -22,12 +22,14 @@
 
 from PyQt4.QtCore import QDir, QPoint, QLocale, QSettings, QFileInfo, QCoreApplication, \
     QByteArray, QSize, QUrl, Qt, QLibraryInfo
-from PyQt4.QtGui import QColor, QFont, QInputDialog, QApplication, QPalette
+from PyQt4.QtGui import QColor, QFont, QInputDialog, QPalette
 from PyQt4.QtNetwork import QNetworkRequest
 from PyQt4.QtWebKit import QWebSettings
 from PyQt4.Qsci import QsciScintilla
 
 from E5Gui import E5FileDialog
+from E5Gui.E5Application import E5Application
+
 from E5Network.E5Ftp import E5FtpProxyType
 
 import QScintilla.Lexers
@@ -451,9 +453,9 @@
         "WhitespaceForeground": QColor(Qt.darkGray),
         "WhitespaceBackground": QColor(Qt.white),
         "EditAreaForeground":
-            QApplication.palette().color(QPalette.Active, QPalette.Base),
+            E5Application.palette().color(QPalette.Active, QPalette.Base),
         "EditAreaBackground":
-            QApplication.palette().color(QPalette.Active, QPalette.Text),
+            E5Application.palette().color(QPalette.Active, QPalette.Text),
     }
     
     editorOtherFontsDefaults = {
--- a/QScintilla/Editor.py	Sat Sep 29 19:59:18 2012 +0200
+++ b/QScintilla/Editor.py	Sun Sep 30 13:27:28 2012 +0200
@@ -16,7 +16,7 @@
     QDialog, QAbstractPrintDialog, QInputDialog, QApplication, QMenu, QPalette, QFont
 from PyQt4.Qsci import QsciScintilla, QsciMacro, QsciStyledText
 
-from E5Gui.E5Application import e5App
+from E5Gui.E5Application import e5App, E5Application
 from E5Gui import E5FileDialog, E5MessageBox
 
 from . import Exporters
@@ -3681,7 +3681,7 @@
                 Preferences.getEditorColour("SelectionBackground"))
         else:
             self.setSelectionBackgroundColor(
-                QApplication.palette().color(QPalette.Highlight))
+                E5Application.palette().color(QPalette.Highlight))
         if Preferences.getEditor("ColourizeSelText"):
             self.resetSelectionForegroundColor()
         elif Preferences.getEditor("CustomSelectionColours"):
@@ -3689,7 +3689,7 @@
                 Preferences.getEditorColour("SelectionForeground"))
         else:
             self.setSelectionForegroundColor(
-                QApplication.palette().color(QPalette.HighlightedText))
+                E5Application.palette().color(QPalette.HighlightedText))
         self.setSelectionToEol(Preferences.getEditor("ExtendSelectionToEol"))
         self.setCaretForegroundColor(
             Preferences.getEditorColour("CaretForeground"))
--- a/QScintilla/MiniEditor.py	Sat Sep 29 19:59:18 2012 +0200
+++ b/QScintilla/MiniEditor.py	Sun Sep 30 13:27:28 2012 +0200
@@ -19,6 +19,7 @@
 
 from E5Gui.E5Action import E5Action, createActionGroup
 from E5Gui import E5MessageBox, E5FileDialog
+from E5Gui.E5Application import E5Application
 
 from . import Lexers
 from .QsciScintillaCompat import QsciScintillaCompat
@@ -2165,7 +2166,7 @@
                 Preferences.getEditorColour("SelectionBackground"))
         else:
             self.__textEdit.setSelectionBackgroundColor(
-                QApplication.palette().color(QPalette.Highlight))
+                E5Application.palette().color(QPalette.Highlight))
         if Preferences.getEditor("ColourizeSelText"):
             self.__textEdit.resetSelectionForegroundColor()
         elif Preferences.getEditor("CustomSelectionColours"):
@@ -2173,7 +2174,7 @@
                 Preferences.getEditorColour("SelectionForeground"))
         else:
             self.__textEdit.setSelectionForegroundColor(
-                QApplication.palette().color(QPalette.HighlightedText))
+                E5Application.palette().color(QPalette.HighlightedText))
         self.__textEdit.setSelectionToEol(Preferences.getEditor("ExtendSelectionToEol"))
         self.__textEdit.setCaretForegroundColor(
             Preferences.getEditorColour("CaretForeground"))
--- a/QScintilla/QsciScintillaCompat.py	Sat Sep 29 19:59:18 2012 +0200
+++ b/QScintilla/QsciScintillaCompat.py	Sun Sep 30 13:27:28 2012 +0200
@@ -8,14 +8,16 @@
 """
 
 from PyQt4.QtCore import Qt
-from PyQt4.QtGui import QApplication, QPalette, QColor
+from PyQt4.QtGui import QPalette, QColor
 from PyQt4.Qsci import QsciScintilla, \
     QSCINTILLA_VERSION as QsciQSCINTILLA_VERSION, QSCINTILLA_VERSION_STR, \
     QsciScintillaBase
 
+from E5Gui.E5Application import E5Application
 
 ###############################################################################
 
+
 def QSCINTILLA_VERSION():
     """
     Module function to return the QScintilla version.
@@ -78,7 +80,7 @@
         """
         Public method to set the styles according the selected Qt style.
         """
-        palette = QApplication.palette()
+        palette = E5Application.palette()
         self.SendScintilla(QsciScintilla.SCI_STYLESETFORE,
             QsciScintilla.STYLE_DEFAULT, palette.color(QPalette.Text))
         self.SendScintilla(QsciScintilla.SCI_STYLESETBACK,
--- a/QScintilla/Shell.py	Sat Sep 29 19:59:18 2012 +0200
+++ b/QScintilla/Shell.py	Sun Sep 30 13:27:28 2012 +0200
@@ -15,7 +15,7 @@
     QPalette, QFont, QWidget, QHBoxLayout, QVBoxLayout, QShortcut
 from PyQt4.Qsci import QsciScintilla
 
-from E5Gui.E5Application import e5App
+from E5Gui.E5Application import e5App, E5Application
 from E5Gui import E5MessageBox
 
 from . import Lexers
@@ -377,7 +377,7 @@
                 Preferences.getEditorColour("SelectionBackground"))
         else:
             self.setSelectionBackgroundColor(
-                QApplication.palette().color(QPalette.Highlight))
+                E5Application.palette().color(QPalette.Highlight))
         if Preferences.getEditor("ColourizeSelText"):
             self.resetSelectionForegroundColor()
         elif Preferences.getEditor("CustomSelectionColours"):
@@ -385,7 +385,7 @@
                 Preferences.getEditorColour("SelectionForeground"))
         else:
             self.setSelectionForegroundColor(
-                QApplication.palette().color(QPalette.HighlightedText))
+                E5Application.palette().color(QPalette.HighlightedText))
         self.setSelectionToEol(Preferences.getEditor("ExtendSelectionToEol"))
         self.setCaretForegroundColor(
             Preferences.getEditorColour("CaretForeground"))
--- a/QScintilla/Terminal.py	Sat Sep 29 19:59:18 2012 +0200
+++ b/QScintilla/Terminal.py	Sun Sep 30 13:27:28 2012 +0200
@@ -17,7 +17,7 @@
     QWidget, QHBoxLayout, QShortcut
 from PyQt4.Qsci import QsciScintilla
 
-from E5Gui.E5Application import e5App
+from E5Gui.E5Application import e5App, E5Application
 
 from . import Lexers
 from .QsciScintillaCompat import QsciScintillaCompat
@@ -379,7 +379,7 @@
                 Preferences.getEditorColour("SelectionBackground"))
         else:
             self.setSelectionBackgroundColor(
-                QApplication.palette().color(QPalette.Highlight))
+                E5Application.palette().color(QPalette.Highlight))
         if Preferences.getEditor("ColourizeSelText"):
             self.resetSelectionForegroundColor()
         elif Preferences.getEditor("CustomSelectionColours"):
@@ -387,7 +387,7 @@
                 Preferences.getEditorColour("SelectionForeground"))
         else:
             self.setSelectionForegroundColor(
-                QApplication.palette().color(QPalette.HighlightedText))
+                E5Application.palette().color(QPalette.HighlightedText))
         self.setSelectionToEol(Preferences.getEditor("ExtendSelectionToEol"))
         self.setCaretForegroundColor(
             Preferences.getEditorColour("CaretForeground"))
--- a/Utilities/FtpUtilities.py	Sat Sep 29 19:59:18 2012 +0200
+++ b/Utilities/FtpUtilities.py	Sun Sep 30 13:27:28 2012 +0200
@@ -10,7 +10,8 @@
 import os
 
 from PyQt4.QtCore import QObject, QDate, QDateTime, QTime
-from PyQt4.QtNetwork import QUrlInfo
+
+from E5Network.E5UrlInfo import E5UrlInfo
 
 
 class FtpDirLineParserError(Exception):
@@ -69,7 +70,7 @@
         given URL info object.
         
         @param modeString mode string to be parsed (string)
-        @param urlInfo reference to the URL info object (QUrlInfo)
+        @param urlInfo reference to the URL info object (E5UrlInfo)
         @exception FtpDirLineParserError Raised if the mode cannot be parsed.
         """
         if len(modeString) != 10:
@@ -79,23 +80,23 @@
         
         permission = 0
         if modeString[1] != '-':
-            permission |= QUrlInfo.ReadOwner
+            permission |= E5UrlInfo.ReadOwner
         if modeString[2] != '-':
-            permission |= QUrlInfo.WriteOwner
+            permission |= E5UrlInfo.WriteOwner
         if modeString[3] != '-':
-            permission |= QUrlInfo.ExeOwner
+            permission |= E5UrlInfo.ExeOwner
         if modeString[4] != '-':
-            permission |= QUrlInfo.ReadGroup
+            permission |= E5UrlInfo.ReadGroup
         if modeString[5] != '-':
-            permission |= QUrlInfo.WriteGroup
+            permission |= E5UrlInfo.WriteGroup
         if modeString[6] != '-':
-            permission |= QUrlInfo.ExeGroup
+            permission |= E5UrlInfo.ExeGroup
         if modeString[7] != '-':
-            permission |= QUrlInfo.ReadOther
+            permission |= E5UrlInfo.ReadOther
         if modeString[8] != '-':
-            permission |= QUrlInfo.WriteOther
+            permission |= E5UrlInfo.WriteOther
         if modeString[9] != '-':
-            permission |= QUrlInfo.ExeOther
+            permission |= E5UrlInfo.ExeOther
         urlInfo.setPermissions(permission)
         
         if modeString[0] == "d":
@@ -127,7 +128,7 @@
         @param monthAbbreviation abbreviation of the month name (string)
         @param day day of the month (string)
         @param yearOrTime string giving the year or a time (string)
-        @param urlInfo reference to the URL info object (QUrlInfo)
+        @param urlInfo reference to the URL info object (E5UrlInfo)
         @exception FtpDirLineParserError Raised if the month abbreviation is
             not recognized.
         """
@@ -190,7 +191,7 @@
         Private method to parse a Unix style directory listing line.
         
         @param line directory line to be parsed (string)
-        @return URL info object containing the valid data (QUrlInfo)
+        @return URL info object containing the valid data (E5UrlInfo)
         @exception FtpDirLineParserError Raised if the line is not of a
             recognized Unix format.
         """
@@ -200,7 +201,7 @@
         if name in [".", ".."]:
             return None
         
-        urlInfo = QUrlInfo()
+        urlInfo = E5UrlInfo()
         self.__parseUnixMode(modeString, urlInfo)
         self.__parseUnixTime(month, day, yearOrTime, urlInfo)
         urlInfo.setOwner(user)
@@ -225,7 +226,7 @@
         
         @param date date string (string)
         @param time time string (string)
-        @param urlInfo reference to the URL info object (QUrlInfo)
+        @param urlInfo reference to the URL info object (E5UrlInfo)
         @exception FtpDirLineParserError Raised if either of the strings is not
             recognized.
         """
@@ -256,7 +257,7 @@
         Private method to parse a Windows style directory listing line.
         
         @param line directory line to be parsed (string)
-        @return URL info object containing the valid data (QUrlInfo)
+        @return URL info object containing the valid data (E5UrlInfo)
         @exception FtpDirLineParserError Raised if the line is not of a
             recognized Windows format.
         """
@@ -269,7 +270,7 @@
         if name in [".", ".."]:
             return None
         
-        urlInfo = QUrlInfo()
+        urlInfo = E5UrlInfo()
         self.__parseWindowsTime(date, time, urlInfo)
         if dirOrSize.lower() == "<dir>":
             urlInfo.setDir(True)
@@ -286,11 +287,11 @@
         ext = os.path.splitext(name.lower())[1]
         urlInfo.setSymLink(ext == ".lnk")
         
-        permissions = (QUrlInfo.ReadOwner | QUrlInfo.WriteOwner
-                      | QUrlInfo.ReadGroup | QUrlInfo.WriteGroup
-                      | QUrlInfo.ReadOther | QUrlInfo.WriteOther)
+        permissions = (E5UrlInfo.ReadOwner | E5UrlInfo.WriteOwner
+                      | E5UrlInfo.ReadGroup | E5UrlInfo.WriteGroup
+                      | E5UrlInfo.ReadOther | E5UrlInfo.WriteOther)
         if ext in [".exe", ".com", ".bat", ".cmd"]:
-            permissions |= QUrlInfo.ExeOwner | QUrlInfo.ExeGroup | QUrlInfo.ExeOther
+            permissions |= E5UrlInfo.ExeOwner | E5UrlInfo.ExeGroup | E5UrlInfo.ExeOther
         urlInfo.setPermissions(permissions)
         
         return urlInfo
@@ -304,7 +305,7 @@
         to Windows style. If that fails as well, an exception is raised.
         
         @param line directory line to be parsed (string)
-        @return URL info object containing the valid data (QUrlInfo)
+        @return URL info object containing the valid data (E5UrlInfo)
         @exception FtpDirLineParserError Raised if the line is not of a
             recognized format.
         """
--- a/Utilities/Startup.py	Sat Sep 29 19:59:18 2012 +0200
+++ b/Utilities/Startup.py	Sun Sep 30 13:27:28 2012 +0200
@@ -10,7 +10,7 @@
 import os
 import sys
 
-from PyQt4.QtCore import QTranslator, QTextCodec, QLocale, QLibraryInfo
+from PyQt4.QtCore import QTranslator, QLocale, QLibraryInfo
 from PyQt4.QtGui import QApplication
 
 from E5Gui.E5Application import E5Application
@@ -236,10 +236,6 @@
         qt4TransDir = QLibraryInfo.location(QLibraryInfo.TranslationsPath)
     loadTranslators(qt4TransDir, app)
     
-    QTextCodec.setCodecForCStrings(
-        QTextCodec.codecForName(Preferences.getSystem("StringEncoding"))
-    )
-    
     w = mwFactory(argv)
     if quitOnLastWindowClosed:
         app.lastWindowClosed.connect(app.quit)
--- a/eric5.e4p	Sat Sep 29 19:59:18 2012 +0200
+++ b/eric5.e4p	Sun Sep 30 13:27:28 2012 +0200
@@ -1044,6 +1044,7 @@
     <Source>Helpviewer/Network/FileReply.py</Source>
     <Source>Helpviewer/Network/FileAccessHandler.py</Source>
     <Source>E5Network/E5Ftp.py</Source>
+    <Source>E5Network/E5UrlInfo.py</Source>
   </Sources>
   <Forms>
     <Form>PyUnit/UnittestDialog.ui</Form>
--- a/eric5.py	Sat Sep 29 19:59:18 2012 +0200
+++ b/eric5.py	Sun Sep 30 13:27:28 2012 +0200
@@ -18,7 +18,7 @@
 import time
 import logging
 
-from PyQt4.QtCore import QTextCodec, qWarning, QLibraryInfo, QTimer
+from PyQt4.QtCore import qWarning, QLibraryInfo, QTimer, qVersion
 from PyQt4.QtGui import QApplication, QErrorMessage
 
 # some global variables needed to start the application
@@ -49,6 +49,9 @@
     sys.path.insert(2, os.path.join(os.path.dirname(__file__), "ThirdParty", "Pygments"))
 
 from E5Gui.E5Application import E5Application
+# TODO: is this really needed for Qt5? At the moment it seems so.
+if qVersion() >= "5.0.0":
+    gapp = E5Application([])
 
 from UI.Info import BugAddress
 from UI.SplashScreen import SplashScreen, NoneSplashScreen
@@ -237,9 +240,6 @@
     # Load translation files and install them
     loc = Startup.loadTranslators(qt4TransDir, app, ("qscintilla",))
     
-    QTextCodec.setCodecForCStrings(QTextCodec.codecForName(
-        str(Preferences.getSystem("StringEncoding"))))
-    
     splash.showMessage(QApplication.translate("eric5", "Importing packages..."))
     # We can only import these after creating the E5Application because they
     # make Qt calls that need the E5Application to exist.

eric ide

mercurial