# sec_interp.gui.ui.pages.base_page module

Base class for configuration pages.

class sec_interp.gui.ui.pages.base_page.BasePage(*args: Any, **kwargs: Any)

  Bases: `QWidget`

  Abstract base class for configuration pages.

  Each page manages a specific set of parameters (e.g., DEM, Section, Geology).

  __init__(title: str, parent: QWidget | None = None) → None

    Initialize the page.

    Parameters:

      - title (str) – Title for the group box.

      - parent (QWidget) – Parent widget.

  connect_signals() → None

    Connect internal signals for the page.

  disconnect_signals() → None

    Disconnect all signals to prevent memory leaks.

  get_data() → dict[str, Any]

    Get the current configuration data from the page.

    Returns:

      Dictionary with parameter names and values.

    Return type:

      dict

  validate() → tuple[bool, str]

    Validate the current configuration.

    Returns:

      (is_valid, error_message)

    Return type:

      tuple[bool, str]