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 tt {
11class Application_macos;
12}
13
14namespace tt {
15
17public:
18 //HWND win32Window = nullptr;
19
20 gui_window_vulkan_macos(std::shared_ptr<WindowDelegate> const &delegate, Label &&title);
22
24 gui_window_vulkan_macos &operator=(const gui_window_vulkan_macos &) = delete;
27
28 static void createWindowClass();
29
30 static bool firstWindowHasBeenOpened;
31
32 vk::SurfaceKHR getSurface() const override;
33
34 void set_cursor(mouse_cursor cursor) noexcept override;
35
36 void close_window() override;
37
38 void minimize_window() override;
39
40 void maximize_window() override;
41
42 void normalize_window() override;
43
44 void set_window_size(size_t width, size_t height) override {}
45
46 [[nodiscard]] std::string get_text_from_clipboard() const noexcept override {
47 return "<clipboard>";
48 }
49
50 void set_text_on_clipboard(std::string str) noexcept override { }
51
52
53private:
54 //void setOSWindowRectangleFromRECT(RECT aarectangle) noexcept;
55
56 //TRACKMOUSEEVENT trackMouseLeaveEventParameters;
57 bool trackingMouseLeaveEvent = false;
58
59 //static LRESULT CALLBACK _WindowProc(HWND hwnd, UINT uMsg, WPARAM wParam, LPARAM lParam);
60
64 friend tt::Application_macos;
65};
66
67}
Definition gfx_surface_vulkan.hpp:40
Definition gui_window_vulkan_macos.hpp:16