--- a/src/eric7/Preferences/__init__.py Fri Jan 26 16:17:05 2024 +0100 +++ b/src/eric7/Preferences/__init__.py Mon Jan 29 19:50:44 2024 +0100 @@ -1708,7 +1708,7 @@ else: jediDefaults["MouseClickGotoModifiers"] = Qt.KeyboardModifier.ControlModifier - # defaults for Hex Editor + # defaults for PDF viewer pdfViewerDefaults = { "PdfViewerState": QByteArray(), "PdfViewerSplitterState": QByteArray(), @@ -1722,6 +1722,12 @@ "PdfSearchHighlightAll": True, } + # defaults for the eric-ide server interface + ericServerDefaults = { + "ConnectionProfiles": "{}", # JSON encoded dictionary + "ConnectionTimeout": 10, # timeout in seconds + } + def readToolGroups(): """ @@ -4140,7 +4146,7 @@ def getPdfViewer(key): """ - Module function to retrieve the Pdf Viewer related settings. + Module function to retrieve the PDF Viewer related settings. @param key the key of the value to get @type str @@ -4173,7 +4179,7 @@ def setPdfViewer(key, value): """ - Module function to store the Pdf Viewer related settings. + Module function to store the PDF Viewer related settings. @param key the key of the setting to be set @type str @@ -4185,6 +4191,48 @@ Prefs.settings.setValue("PdfViewer/" + key, value) +def getEricServer(key): + """ + Module function to retrieve the eric-ide server interface related settings. + + @param key the key of the value to get + @type str + @return the requested user setting + @rtype Any + """ + prefix = "EricServer/" + + if key in ("ConnectionTimeout",): + return int( + Prefs.settings.value(f"{prefix}{key}", Prefs.ericServerDefaults[key]) + ) + elif key in ("ConnectionProfiles",): + jsonStr = Prefs.settings.value(f"{prefix}{key}", Prefs.ericServerDefaults[key]) + if jsonStr: + return json.loads(jsonStr) + else: + return None + else: + return Prefs.settings.value(f"{prefix}{key}", Prefs.ericServerDefaults[key]) + + +def setEricServer(key, value): + """ + Module function to store the eric-ide server interface related settings. + + @param key the key of the setting to be set + @type str + @param value the value to be set + @type Any + """ + prefix = "EricServer/" + + if key in ("ConnectionProfiles",): + Prefs.settings.setValue(f"{prefix}{key}", json.dumps(value)) + else: + Prefs.settings.setValue(f"{prefix}{key}", value) + + def getGeometry(key): """ Module function to retrieve the display geometry.