# sec_interp.gui.ui.pages package

## Submodules

- sec_interp.gui.ui.pages.base_page module
  - `BasePage`
    - `BasePage.__init__()`
    - `BasePage.get_data()`
    - `BasePage.validate()`
- sec_interp.gui.ui.pages.dem_page module
  - `DemPage`
    - `DemPage.__init__()`
    - `DemPage.get_data()`
    - `DemPage.validate()`
    - `DemPage.is_complete()`
- sec_interp.gui.ui.pages.drillhole_page module
  - `DrillholePage`
    - `DrillholePage.get_data()`
    - `DrillholePage.is_complete()`
- sec_interp.gui.ui.pages.geology_page module
  - `GeologyPage`
    - `GeologyPage.get_data()`
    - `GeologyPage.is_complete()`
- sec_interp.gui.ui.pages.preview_page module
  - `PreviewWidget`
- sec_interp.gui.ui.pages.section_page module
  - `SectionPage`
    - `SectionPage.get_data()`
    - `SectionPage.validate()`
    - `SectionPage.is_complete()`
- sec_interp.gui.ui.pages.structure_page module
  - `StructurePage`
    - `StructurePage.get_data()`
    - `StructurePage.is_complete()`

## Module contents

UI Configuration Pages.

class sec_interp.gui.ui.pages.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).

  Initialize the page.

  Parameters:

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

    - parent (QWidget) – Parent widget.

  __init__(title: str, parent=None)

    Initialize the page.

    Parameters:

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

      - parent (QWidget) – Parent widget.

  get_data() → dict

    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]