Mon, 31 Dec 2012 11:46:26 +0100
Made a Qt5 related change to make the default settings values load independant of the creation of a QApplication object.
--- a/APIs/Python3/eric5.api Sun Dec 30 15:47:47 2012 +0100 +++ b/APIs/Python3/eric5.api Mon Dec 31 11:46:26 2012 +0100 @@ -5762,13 +5762,12 @@ eric5.Preferences.Prefs.editorExporterDefaults?7 eric5.Preferences.Prefs.editorOtherFontsDefaults?7 eric5.Preferences.Prefs.editorTypingDefaults?7 -eric5.Preferences.Prefs.fontFamily?7 -eric5.Preferences.Prefs.fontSize?7 eric5.Preferences.Prefs.geometryDefaults?7 eric5.Preferences.Prefs.graphicsDefaults?7 eric5.Preferences.Prefs.helpDefaults?7 eric5.Preferences.Prefs.iconEditorDefaults?7 eric5.Preferences.Prefs.iconsDefaults?7 +eric5.Preferences.Prefs.initWebSettingsDefaults?4() eric5.Preferences.Prefs.ircDefaults?7 eric5.Preferences.Prefs.multiProjectDefaults?7 eric5.Preferences.Prefs.pluginManagerDefaults?7 @@ -5790,7 +5789,7 @@ eric5.Preferences.Prefs.varDefaults?7 eric5.Preferences.Prefs.vcsDefaults?7 eric5.Preferences.Prefs.viewProfilesLength?7 -eric5.Preferences.Prefs.websettings?7 +eric5.Preferences.Prefs.webSettingsIntitialized?7 eric5.Preferences.ProgramsDialog.ProgramsDialog.on_buttonBox_clicked?4(button) eric5.Preferences.ProgramsDialog.ProgramsDialog.on_programsSearchButton_clicked?4() eric5.Preferences.ProgramsDialog.ProgramsDialog.show?4()
--- a/Documentation/Help/source.qhp Sun Dec 30 15:47:47 2012 +0100 +++ b/Documentation/Help/source.qhp Mon Dec 31 11:46:26 2012 +0100 @@ -8078,6 +8078,7 @@ <keyword name="PreferencesLexerLanguageError" id="PreferencesLexerLanguageError" ref="eric5.Preferences.PreferencesLexer.html#PreferencesLexerLanguageError" /> <keyword name="PreferencesLexerLanguageError (Constructor)" id="PreferencesLexerLanguageError (Constructor)" ref="eric5.Preferences.PreferencesLexer.html#PreferencesLexerLanguageError.__init__" /> <keyword name="Prefs" id="Prefs" ref="eric5.Preferences.__init__.html#Prefs" /> + <keyword name="Prefs.initWebSettingsDefaults" id="Prefs.initWebSettingsDefaults" ref="eric5.Preferences.__init__.html#Prefs.initWebSettingsDefaults" /> <keyword name="Printer" id="Printer" ref="eric5.QScintilla.Printer.html#Printer" /> <keyword name="Printer (Constructor)" id="Printer (Constructor)" ref="eric5.QScintilla.Printer.html#Printer.__init__" /> <keyword name="Printer (Module)" id="Printer (Module)" ref="eric5.QScintilla.Printer.html" />
--- a/Documentation/Source/eric5.Preferences.__init__.html Sun Dec 30 15:47:47 2012 +0100 +++ b/Documentation/Source/eric5.Preferences.__init__.html Mon Dec 31 11:46:26 2012 +0100 @@ -355,11 +355,14 @@ object <h3>Class Attributes</h3> <table> -<tr><td>cooperationDefaults</td></tr><tr><td>corbaDefaults</td></tr><tr><td>debuggerDefaults</td></tr><tr><td>editorColourDefaults</td></tr><tr><td>editorDefaults</td></tr><tr><td>editorExporterDefaults</td></tr><tr><td>editorOtherFontsDefaults</td></tr><tr><td>editorTypingDefaults</td></tr><tr><td>fontFamily</td></tr><tr><td>fontSize</td></tr><tr><td>geometryDefaults</td></tr><tr><td>graphicsDefaults</td></tr><tr><td>helpDefaults</td></tr><tr><td>iconEditorDefaults</td></tr><tr><td>iconsDefaults</td></tr><tr><td>ircDefaults</td></tr><tr><td>multiProjectDefaults</td></tr><tr><td>pluginManagerDefaults</td></tr><tr><td>printerDefaults</td></tr><tr><td>projectBrowserColourDefaults</td></tr><tr><td>projectBrowserFlagsDefaults</td></tr><tr><td>projectDefaults</td></tr><tr><td>py3flakesDefaults</td></tr><tr><td>qtDefaults</td></tr><tr><td>resetLayout</td></tr><tr><td>shellDefaults</td></tr><tr><td>sysDefaults</td></tr><tr><td>tasksDefaults</td></tr><tr><td>templatesDefaults</td></tr><tr><td>terminalDefaults</td></tr><tr><td>trayStarterDefaults</td></tr><tr><td>uiDefaults</td></tr><tr><td>userDefaults</td></tr><tr><td>varDefaults</td></tr><tr><td>vcsDefaults</td></tr><tr><td>viewProfilesLength</td></tr><tr><td>websettings</td></tr> +<tr><td>cooperationDefaults</td></tr><tr><td>corbaDefaults</td></tr><tr><td>debuggerDefaults</td></tr><tr><td>editorColourDefaults</td></tr><tr><td>editorDefaults</td></tr><tr><td>editorExporterDefaults</td></tr><tr><td>editorOtherFontsDefaults</td></tr><tr><td>editorTypingDefaults</td></tr><tr><td>geometryDefaults</td></tr><tr><td>graphicsDefaults</td></tr><tr><td>helpDefaults</td></tr><tr><td>iconEditorDefaults</td></tr><tr><td>iconsDefaults</td></tr><tr><td>ircDefaults</td></tr><tr><td>multiProjectDefaults</td></tr><tr><td>pluginManagerDefaults</td></tr><tr><td>printerDefaults</td></tr><tr><td>projectBrowserColourDefaults</td></tr><tr><td>projectBrowserFlagsDefaults</td></tr><tr><td>projectDefaults</td></tr><tr><td>py3flakesDefaults</td></tr><tr><td>qtDefaults</td></tr><tr><td>resetLayout</td></tr><tr><td>shellDefaults</td></tr><tr><td>sysDefaults</td></tr><tr><td>tasksDefaults</td></tr><tr><td>templatesDefaults</td></tr><tr><td>terminalDefaults</td></tr><tr><td>trayStarterDefaults</td></tr><tr><td>uiDefaults</td></tr><tr><td>userDefaults</td></tr><tr><td>varDefaults</td></tr><tr><td>vcsDefaults</td></tr><tr><td>viewProfilesLength</td></tr><tr><td>webSettingsIntitialized</td></tr> </table> <h3>Class Methods</h3> <table> -<tr><td>None</td></tr> +<tr> +<td><a href="#Prefs.initWebSettingsDefaults">initWebSettingsDefaults</a></td> +<td>Class method to initialize the web settings related defaults.</td> +</tr> </table> <h3>Methods</h3> <table> @@ -369,7 +372,12 @@ <table> <tr><td>None</td></tr> </table> - +<a NAME="Prefs.initWebSettingsDefaults" ID="Prefs.initWebSettingsDefaults"></a> +<h4>Prefs.initWebSettingsDefaults (class method)</h4> +<b>initWebSettingsDefaults</b>(<i></i>) +<p> + Class method to initialize the web settings related defaults. +</p> <div align="right"><a href="#top">Up</a></div> <hr /><hr /> <a NAME="convertPasswords" ID="convertPasswords"></a>
--- a/Preferences/__init__.py Sun Dec 30 15:47:47 2012 +0100 +++ b/Preferences/__init__.py Mon Dec 31 11:46:26 2012 +0100 @@ -474,10 +474,6 @@ "AnnotationsErrorBackground": QColor("#ffd0d0"), "WhitespaceForeground": QColor(Qt.darkGray), "WhitespaceBackground": QColor(Qt.white), - "EditAreaForeground": - QApplication.palette().color(QPalette.Active, QPalette.Base), - "EditAreaBackground": - QApplication.palette().color(QPalette.Active, QPalette.Text), "OnlineChangeTraceMarkerUnsaved": QColor("#ff8888"), "OnlineChangeTraceMarkerSaved": QColor("#88ff88"), } @@ -726,64 +722,72 @@ "GreaseMonkeyDisabledScripts": [], } - websettings = QWebSettings.globalSettings() - fontFamily = websettings.fontFamily(QWebSettings.StandardFont) - fontSize = websettings.fontSize(QWebSettings.DefaultFontSize) - helpDefaults["StandardFont"] = QFont(fontFamily, fontSize).toString() - fontFamily = websettings.fontFamily(QWebSettings.FixedFont) - fontSize = websettings.fontSize(QWebSettings.DefaultFixedFontSize) - helpDefaults["FixedFont"] = QFont(fontFamily, fontSize).toString() - helpDefaults.update({ - "AutoLoadImages": - websettings.testAttribute(QWebSettings.AutoLoadImages), - "UserStyleSheet": "", - "SaveUrlColor": QColor(248, 248, 210), - "JavaEnabled": - websettings.testAttribute(QWebSettings.JavaEnabled), - "JavaScriptEnabled": - websettings.testAttribute(QWebSettings.JavascriptEnabled), - "JavaScriptCanOpenWindows": - websettings.testAttribute(QWebSettings.JavascriptCanOpenWindows), - "JavaScriptCanAccessClipboard": - websettings.testAttribute(QWebSettings.JavascriptCanAccessClipboard), - "PluginsEnabled": - websettings.testAttribute(QWebSettings.PluginsEnabled), - "OfflineStorageDatabaseEnabled": - websettings.testAttribute(QWebSettings.OfflineStorageDatabaseEnabled), - }) - if hasattr(QWebSettings, "OfflineWebApplicationCacheEnabled"): - helpDefaults.update({ - "OfflineWebApplicationCacheEnabled": - websettings.testAttribute(QWebSettings.OfflineWebApplicationCacheEnabled), - "OfflineWebApplicationCacheQuota": 50, # 50 MB + @classmethod + def initWebSettingsDefaults(cls): + """ + Class method to initialize the web settings related defaults. + """ + websettings = QWebSettings.globalSettings() + fontFamily = websettings.fontFamily(QWebSettings.StandardFont) + fontSize = websettings.fontSize(QWebSettings.DefaultFontSize) + cls.helpDefaults["StandardFont"] = QFont(fontFamily, fontSize).toString() + fontFamily = websettings.fontFamily(QWebSettings.FixedFont) + fontSize = websettings.fontSize(QWebSettings.DefaultFixedFontSize) + cls.helpDefaults["FixedFont"] = QFont(fontFamily, fontSize).toString() + cls.helpDefaults.update({ + "AutoLoadImages": + websettings.testAttribute(QWebSettings.AutoLoadImages), + "UserStyleSheet": "", + "SaveUrlColor": QColor(248, 248, 210), + "JavaEnabled": + websettings.testAttribute(QWebSettings.JavaEnabled), + "JavaScriptEnabled": + websettings.testAttribute(QWebSettings.JavascriptEnabled), + "JavaScriptCanOpenWindows": + websettings.testAttribute(QWebSettings.JavascriptCanOpenWindows), + "JavaScriptCanAccessClipboard": + websettings.testAttribute(QWebSettings.JavascriptCanAccessClipboard), + "PluginsEnabled": + websettings.testAttribute(QWebSettings.PluginsEnabled), + "OfflineStorageDatabaseEnabled": + websettings.testAttribute(QWebSettings.OfflineStorageDatabaseEnabled), }) - if hasattr(QWebSettings, "LocalStorageEnabled"): - helpDefaults["LocalStorageEnabled"] = \ - websettings.testAttribute(QWebSettings.LocalStorageEnabled) - if hasattr(QWebSettings, "DnsPrefetchEnabled"): - helpDefaults["DnsPrefetchEnabled"] = \ - websettings.testAttribute(QWebSettings.DnsPrefetchEnabled) - if hasattr(QWebSettings, "defaultTextEncoding"): - helpDefaults["DefaultTextEncoding"] = \ - websettings.defaultTextEncoding() - if hasattr(QWebSettings, "SpatialNavigationEnabled"): - helpDefaults["SpatialNavigationEnabled"] = \ - websettings.testAttribute(QWebSettings.SpatialNavigationEnabled) - if hasattr(QWebSettings, "LinksIncludedInFocusChain"): - helpDefaults["LinksIncludedInFocusChain"] = \ - websettings.testAttribute(QWebSettings.LinksIncludedInFocusChain) - if hasattr(QWebSettings, "LocalContentCanAccessRemoteUrls"): - helpDefaults["LocalContentCanAccessRemoteUrls"] = \ - websettings.testAttribute(QWebSettings.LocalContentCanAccessRemoteUrls) - if hasattr(QWebSettings, "LocalContentCanAccessFileUrls"): - helpDefaults["LocalContentCanAccessFileUrls"] = \ - websettings.testAttribute(QWebSettings.LocalContentCanAccessFileUrls) - if hasattr(QWebSettings, "XSSAuditingEnabled"): - helpDefaults["XSSAuditingEnabled"] = \ - websettings.testAttribute(QWebSettings.XSSAuditingEnabled) - if hasattr(QWebSettings, "SiteSpecificQuirksEnabled"): - helpDefaults["SiteSpecificQuirksEnabled"] = \ - websettings.testAttribute(QWebSettings.SiteSpecificQuirksEnabled) + if hasattr(QWebSettings, "OfflineWebApplicationCacheEnabled"): + cls.helpDefaults.update({ + "OfflineWebApplicationCacheEnabled": + websettings.testAttribute( + QWebSettings.OfflineWebApplicationCacheEnabled), + "OfflineWebApplicationCacheQuota": 50, # 50 MB + }) + if hasattr(QWebSettings, "LocalStorageEnabled"): + cls.helpDefaults["LocalStorageEnabled"] = \ + websettings.testAttribute(QWebSettings.LocalStorageEnabled) + if hasattr(QWebSettings, "DnsPrefetchEnabled"): + cls.helpDefaults["DnsPrefetchEnabled"] = \ + websettings.testAttribute(QWebSettings.DnsPrefetchEnabled) + if hasattr(QWebSettings, "defaultTextEncoding"): + cls.helpDefaults["DefaultTextEncoding"] = \ + websettings.defaultTextEncoding() + if hasattr(QWebSettings, "SpatialNavigationEnabled"): + cls.helpDefaults["SpatialNavigationEnabled"] = \ + websettings.testAttribute(QWebSettings.SpatialNavigationEnabled) + if hasattr(QWebSettings, "LinksIncludedInFocusChain"): + cls.helpDefaults["LinksIncludedInFocusChain"] = \ + websettings.testAttribute(QWebSettings.LinksIncludedInFocusChain) + if hasattr(QWebSettings, "LocalContentCanAccessRemoteUrls"): + cls.helpDefaults["LocalContentCanAccessRemoteUrls"] = \ + websettings.testAttribute(QWebSettings.LocalContentCanAccessRemoteUrls) + if hasattr(QWebSettings, "LocalContentCanAccessFileUrls"): + cls.helpDefaults["LocalContentCanAccessFileUrls"] = \ + websettings.testAttribute(QWebSettings.LocalContentCanAccessFileUrls) + if hasattr(QWebSettings, "XSSAuditingEnabled"): + cls.helpDefaults["XSSAuditingEnabled"] = \ + websettings.testAttribute(QWebSettings.XSSAuditingEnabled) + if hasattr(QWebSettings, "SiteSpecificQuirksEnabled"): + cls.helpDefaults["SiteSpecificQuirksEnabled"] = \ + websettings.testAttribute(QWebSettings.SiteSpecificQuirksEnabled) + + webSettingsIntitialized = False # defaults for system settings sysDefaults = { @@ -1585,7 +1589,13 @@ else: return QColor(col) else: - return prefClass.editorColourDefaults[key] + # palette based defaults here because of Qt5 + if key == "EditAreaForeground": + return QApplication.palette().color(QPalette.Active, QPalette.Base) + elif key == "EditAreaBackground": + return QApplication.palette().color(QPalette.Active, QPalette.Text) + else: + return prefClass.editorColourDefaults[key] def setEditorColour(key, value, prefClass=Prefs): @@ -2084,6 +2094,9 @@ @param prefClass preferences class used as the storage area @return the requested help setting """ + if not prefClass.webSettingsIntitialized: + prefClass.initWebSettingsDefaults() + if key in ["StandardFont", "FixedFont"]: f = QFont() f.fromString(prefClass.settings.value("Help/" + key,