Skip to content

settings_port

freecad.datamanager_wb.ports.settings_port

Settings port abstraction for Qt settings persistence.

This module isolates QtCore.QSettings behind a small interface so the UI layer can be tested with a fake settings store.

QtSettingsAdapter(*, group, app)

Runtime implementation of SettingsPort using QtCore.QSettings.

Source code in freecad/datamanager_wb/ports/settings_port.py
def __init__(self, *, group: str, app: str) -> None:
    self._group = group
    self._app = app

set_value(key, value)

Persist a value to Qt settings.

Source code in freecad/datamanager_wb/ports/settings_port.py
def set_value(self, key: str, value: object) -> None:
    """Persist a value to Qt settings."""

    settings = self._get_settings()
    settings.setValue(key, value)

value(key, default=None)

Return a stored value from Qt settings.

Source code in freecad/datamanager_wb/ports/settings_port.py
def value(self, key: str, default: object | None = None) -> object | None:
    """Return a stored value from Qt settings."""

    settings = self._get_settings()
    return settings.value(key, default)

SettingsPort

Port interface for reading/writing persistent UI settings.

set_value(key, value)

Persist a value under the given key.

Source code in freecad/datamanager_wb/ports/settings_port.py
def set_value(self, key: str, value: object) -> None:
    """Persist a value under the given key."""

value(key, default=None)

Return a stored value for key, or default when unset.

Source code in freecad/datamanager_wb/ports/settings_port.py
def value(self, key: str, default: object | None = None) -> object | None:
    """Return a stored value for key, or default when unset."""