1. Overview
GTK application wrapper responsible for creating and presenting the main BastionGuard Secure Connection window and applying startup behavior such as minimized launch.
File role: Header Interface. The file contains 27 lines and belongs to the Application.hpp path.
The companion file is Application.cpp.
2. Component Responsibilities
- Declare the component API, owned state, callbacks, and data structures.
- Create the Gtk::Application instance with the BastionGuard application ID
- Receive the activation callback from GTK
- Create the MainWindow on first activation
- Present or hide the window according to the startup-minimized option
3. Dependencies and Integration
Project-level dependencies:
gtkmm.hMainWindow.hpp
4. Declared Types
Application
Declares a class derived from or associated with public Gtk::Application.
5. Owned State and UI Members
Data and configuration state
MainWindow* m_window = nullptr;bool m_startMinimized = false;
6. Functions and Methods
The file exposes or implements 4 detected function or method signatures.
1. create
static Glib::RefPtr<Application> create()
Creates create and initializes the resulting object or file.
2. Application
Application()
Implements the application operation declared by this component.
3. on_activate
void on_activate() override
Handles the activate callback or user event.
4. setStartMinimized
void setStartMinimized(bool v)
Updates start minimized and synchronizes dependent state.
7. Runtime Flow
- Create the Gtk::Application instance with the BastionGuard application ID
- Receive the activation callback from GTK
- Create the MainWindow on first activation
- Present or hide the window according to the startup-minimized option
8. Runtime and Security Considerations
- Uses the Gtk::Application single-application lifecycle and application identifier.
- Keeps window ownership inside the GTK application object.
9. Error Handling and Operational Notes
- Errors are propagated through the return type, callbacks, or the owning controller.
10. Source Integrity
Relative source path: Application.hpp
SHA-256:
b792f12da205e25521f2783cac2fe931c122841cb57483c1f9cc1c25ebe91270
11. Licensing
No standalone license block is present in this file. Licensing follows the surrounding BastionGuard Secure Connection project and its accompanying source notices.
