HikoGUI
A low latency retained GUI
Loading...
Searching...
No Matches
gui_window_vulkan_macos.hpp
1// Copyright Take Vos 2019-2021.
2// Distributed under the Boost Software License, Version 1.0.
3// (See accompanying file LICENSE_1_0.txt or copy at https://www.boost.org/LICENSE_1_0.txt)
4
5#pragma once
6
7#include "gfx_surface_vulkan.hpp"
8#include <unordered_map>
9
10namespace hi::inline v1 {
11
13public:
14 // HWND win32Window = nullptr;
15
16 gui_window_vulkan_macos(std::shared_ptr<WindowDelegate> const &delegate, Label &&title);
18
20 gui_window_vulkan_macos &operator=(const gui_window_vulkan_macos &) = delete;
23
24 static void createWindowClass();
25
26 static bool firstWindowHasBeenOpened;
27
28 vk::SurfaceKHR getSurface() const override;
29
30 void set_cursor(mouse_cursor cursor) noexcept override;
31
32 void close_window() override;
33
34 void minimize_window() override;
35
36 void maximize_window() override;
37
38 void normalize_window() override;
39
40 void set_window_size(std::size_t width, std::size_t height) override {}
41
42 [[nodiscard]] std::string get_text_from_clipboard() const noexcept override
43 {
44 return "<clipboard>";
45 }
46
47 void set_text_on_clipboard(std::string str) noexcept override {}
48
49private:
50 // void setOSWindowRectangleFromRECT(RECT aarectangle) noexcept;
51
52 // TRACKMOUSEEVENT trackMouseLeaveEventParameters;
53 bool trackingMouseLeaveEvent = false;
54
55 // static LRESULT CALLBACK _WindowProc(HWND hwnd, UINT uMsg, WPARAM wParam, LPARAM lParam);
56
60 friend hi::Application_macos;
61};
62
63} // namespace hi::inline v1
DOXYGEN BUG.
Definition algorithm.hpp:13
Definition gfx_surface_vulkan.hpp:40
Definition gui_window_vulkan_macos.hpp:12