Skip to content

Latest commit

 

History

History
78 lines (47 loc) · 5.53 KB

File metadata and controls

78 lines (47 loc) · 5.53 KB
graph LR
    Application_Logic["Application Logic"]
    Guietta_Core["Guietta Core"]
    Matplotlib_Integration["Matplotlib Integration"]
    PyQtGraph_Integration["PyQtGraph Integration"]
    Qt_Backend["Qt Backend"]
    Application_Logic -- "Configures GUI & Event Handlers" --> Guietta_Core
    Guietta_Core -- "Manages User Interaction & Data Flow" --> Application_Logic
    Guietta_Core -- "Integrates Plotting Capabilities" --> Matplotlib_Integration
    Matplotlib_Integration -- "Renders Plots within GUI" --> Guietta_Core
    Guietta_Core -- "Integrates Plotting Capabilities" --> PyQtGraph_Integration
    PyQtGraph_Integration -- "Renders Plots within GUI" --> Guietta_Core
    Guietta_Core -- "Translates GUI Definitions & Events" --> Qt_Backend
    Qt_Backend -- "Provides Low-Level GUI Services & Events" --> Guietta_Core
    click Guietta_Core href "https://github.com/CodeBoarding/GeneratedOnBoardings/blob/main/guietta/Guietta_Core.md" "Details"
    click Matplotlib_Integration href "https://github.com/CodeBoarding/GeneratedOnBoardings/blob/main/guietta/Matplotlib_Integration.md" "Details"
Loading

CodeBoardingDemoContact

Details

The guietta architecture is designed around a clear separation of concerns, enabling declarative GUI development. The Application Logic defines the user interface and its behavior by interacting with the Guietta Core. This core component acts as the central orchestrator, translating high-level GUI descriptions into concrete elements and managing the flow of user interactions. It dispatches events back to the Application Logic for processing and retrieves necessary data. For advanced visualization needs, Guietta Core integrates with Matplotlib Integration and PyQtGraph Integration modules, allowing seamless embedding of plots. All these interactions ultimately rely on the Qt Backend, which provides the fundamental rendering and event processing services, abstracted by Guietta Core to simplify development. This layered approach ensures maintainability and allows developers to focus on application logic rather than low-level GUI details.

Application Logic

The user-defined code that implements the application's specific business logic, data models, and event handlers. It defines the GUI structure using guietta's API.

Related Classes/Methods:

Guietta Core [Expand]

The central abstraction layer of the guietta library. It handles declarative GUI definition, widget creation, layout management, event registration and dispatch, and basic data binding. It acts as the primary interface for Application Logic.

Related Classes/Methods:

Matplotlib Integration [Expand]

A specialized module for embedding and managing Matplotlib plots within guietta GUIs. It provides the necessary bridge between guietta's display capabilities and Matplotlib's rendering.

Related Classes/Methods:

PyQtGraph Integration

A specialized module for integrating high-performance PyQtGraph plots into guietta applications, similar to Matplotlib integration but for PyQtGraph's specific features.

Related Classes/Methods:

Qt Backend

Represents the underlying Qt framework (PySide2/PyQt5) that guietta abstracts. It is responsible for the actual rendering of GUI elements, low-level event processing, and window management. Guietta Core interacts with this layer.

Related Classes/Methods: