- bool recording = false;\r
- HANDLE process = NULL;\r
-\r
- HWND window = win::Window("Title", "MyWindowClass", hInstance);\r
-\r
- lay_id row1 = lay_item(&win::_::ctx);\r
- lay_insert(&win::_::ctx, win::_::root, row1);\r
- lay_set_size_xy(&win::_::ctx, row1, 0, 25);\r
- lay_set_behave(&win::_::ctx, row1, LAY_LEFT);\r
- lay_set_contain(&win::_::ctx, row1, LAY_ROW);\r
- lay_set_margins_ltrb(&win::_::ctx, row1, 5, 5, 5, 5);\r
- lay_id row2 = lay_item(&win::_::ctx);\r
- lay_insert(&win::_::ctx, win::_::root, row2);\r
- lay_set_size_xy(&win::_::ctx, row2, 0, 0);\r
- lay_set_behave(&win::_::ctx, row2, LAY_FILL);\r
- lay_set_contain(&win::_::ctx, row2, LAY_ROW);\r
- lay_id col1 = lay_item(&win::_::ctx);\r
- lay_set_size_xy(&win::_::ctx, col1, 80, 0);\r
- lay_set_behave(&win::_::ctx, col1, LAY_VCENTER);\r
- lay_set_contain(&win::_::ctx, col1, LAY_COLUMN);\r
- lay_set_margins_ltrb(&win::_::ctx, col1, 5, 0, 5, 0);\r
-\r
- HWND cbWindowTitle = win::CheckBox(window, "Window Title", row1, 100, 25, 0, 0);\r
- HWND cbFullscreenWindow = win::CheckBox(window, "Any Fullscreen Application", row1, 200, 25, 0, 0);\r
-\r
- HWND btnConnect = win::Button(window, "Connect", row1, 100, 25, 0, 0);\r
- win::Callback(btnConnect, BN_CLICKED, [&]() {\r
- ws::connect("ws://127.0.0.1:4444");\r
+ hInstance = GetModuleHandle(0);\r
+\r
+ win::Window window("Title", "MyWindowClass", hInstance);\r
+ hwnd = window.hwnd;\r
+\r
+ niData.cbSize = sizeof(niData);\r
+ niData.uID = 12345;\r
+ niData.uFlags = NIF_ICON | NIF_MESSAGE | NIF_TIP;\r
+ niData.hIcon = LoadIconA(hInstance, MAKEINTRESOURCEA(IDI_ICON_WHITE));\r
+ niData.hWnd = window.hwnd;\r
+ niData.uCallbackMessage = ICON_MSG;\r
+ niData.uVersion = NOTIFYICON_VERSION_4;\r
+\r
+ window.handlers[WM_SIZE].push_back([](HWND hwnd, UINT msg, WPARAM wParam, LPARAM lParam) {\r
+ if (wParam == SIZE_MINIMIZED) {\r
+ ShowNotificationIcon();\r
+ ShowWindow(hwnd, false);\r
+ }\r