src/eric7/Preferences/__init__.py

branch
server
changeset 10531
3308e8349e4c
parent 10518
1682f3203ae5
child 10555
08e853c0c77b
--- 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.

eric ide

mercurial