Defines the HttpFetcher class for performing HTTP GET requests asynchronously.
Manages local storage and retrieval of JSON data for stations and sensors.
Defines the Panel class for managing wxWidgets panels.
Handles asynchronous HTTP GET requests.
Definition HttpFetcher.h:34
Panel(Panel *origin)
Constructs a new Panel and hides the previous one if provided.
const int styleObjectSpacingY
Vertical spacing between UI elements.
Definition PanelStart.h:35
~PanelStart()
Destructor for PanelStart. Cleans up dynamically allocated resources and unbinds events.
HttpFetcher * httpFetcher
Pointer to an HTTP fetcher instance.
Definition PanelStart.h:57
void ButtonAbout_OnButtonClick(wxCommandEvent &event)
Handles click events on the "About" button.
void ListStations_OnItemDoubleClicked(wxCommandEvent &event)
Handles double-click events on the station list. Opens a new panel for the selected station.
void OnWindowMaximized(wxMaximizeEvent &event)
Handles window maximization events.
PanelStart()
Constructor for PanelStart. Initializes the UI components and starts fetching station data.
wxButton * button_about
Button for displaying information about the application.
Definition PanelStart.h:106
const int styleObjectSpacingX
Horizontal spacing between UI elements.
Definition PanelStart.h:34
void OnWindowResized(wxSizeEvent &event)
Handles window resize events.
void OnFullScreen(wxFullScreenEvent &event)
Handles full-screen events.
wxListBox * listStations
List box displaying station names.
Definition PanelStart.h:96
void FetchList()
Initiates fetching of the station list from the API.
wxStaticText * textTop
Static text displaying the title.
Definition PanelStart.h:92
nlohmann::json data
JSON object holding station data.
Definition PanelStart.h:94
void OnDataFetched(wxThreadEvent &event)
Event handler for processing fetched data.
void UpdateGUI()
Updates the graphical user interface. Resizes UI elements based on the current window size.