Source code for mafw.steering_gui.utils.gui_helpers

"""Reusable GUI helpers shared across the steering GUI views."""

#  Copyright 2026 European Union
#  Author: Bulgheroni Antonio (antonio.bulgheroni@ec.europa.eu)
#  SPDX-License-Identifier: EUPL-1.2
from __future__ import annotations

import re
from contextlib import contextmanager
from typing import Iterator

from PySide6.QtCore import QObject


[docs] @contextmanager def block_signals(*widgets: QObject) -> Iterator[None]: """Temporarily disable Qt signals for a set of widgets.""" try: for widget in widgets: widget.blockSignals(True) yield finally: for widget in widgets: widget.blockSignals(False)
[docs] def coerce_name(text: str) -> str: """Replace any whitespace in the provided text with underscores.""" return re.sub(r'\s+', '_', text)