22#include " nativeapi.h"
33
44using nativeapi::AppRunner;
5+ using nativeapi::Display;
6+ using nativeapi::DisplayAddedEvent;
7+ using nativeapi::DisplayManager;
8+ using nativeapi::DisplayRemovedEvent;
59using nativeapi::Tray;
610using nativeapi::TrayManager;
711using nativeapi::Window;
812using nativeapi::WindowManager;
913using nativeapi::WindowOptions;
1014
1115int main () {
16+ DisplayManager display_manager = DisplayManager ();
1217 TrayManager tray_manager = TrayManager ();
1318 WindowManager window_manager = WindowManager ();
1419
1520 // Create a new window with options
16- WindowOptions options;
17- options.title = " My Window" ;
18- options.size .width = 800 ;
19- options.size .height = 600 ;
21+ WindowOptions options = {.title = " Window Example" ,
22+ .size = {800 , 600 },
23+ .minimum_size = {400 , 300 },
24+ .maximum_size = {1920 , 1080 },
25+ .centered = true };
2026 std::shared_ptr<Window> window_ptr = window_manager.Create (options);
2127
2228 std::shared_ptr<Tray> tray_ptr = tray_manager.Create ();
@@ -29,6 +35,15 @@ int main() {
2935 std::cerr << " Failed to create tray." << std::endl;
3036 }
3137
38+ display_manager.AddListener <nativeapi::DisplayAddedEvent>(
39+ [](const nativeapi::DisplayAddedEvent& event) {
40+ std::cout << " Display added: " << event.GetDisplay ().id << std::endl;
41+ });
42+ display_manager.AddListener <nativeapi::DisplayRemovedEvent>(
43+ [](const nativeapi::DisplayRemovedEvent& event) {
44+ std::cout << " Display removed: " << event.GetDisplay ().id << std::endl;
45+ });
46+
3247 AppRunner runner;
3348 runner.Run (window_ptr);
3449
0 commit comments