acme
Foundational cross-platform layer of the ca2 framework
Loading...
Searching...
No Matches
windowing.h
1// created by Camilo <3CamiloSasukeThomasBorregaardSoerens
2// en
3// recreated by Camilo 2021-01-28 22:35 <3TBS, Mummi and bilbo!!
4// Adapted by Camilo for android 2022-01-05 04:34 <3TBS (Thomas likes number 5), Mummi and bilbo!!
5// Adapted by Camilo for cached/simulation of mouse-capture/keyboard-focus state information and
6// a few other things present in sandboxed applications (mobile/tablet/small devices)
7// - 2022-06-02 12:44 PM <3TBS (Thomas likes number 5), Mummi and bilbo!!
8// Created by camilo on 2022-06-02 12:41 PM <3ThomasBorregaardSorensen!!
9// as acme::sandbox_windowing on 2024-11-25 23:24 by
10// camilo <3ThomasBorregaardSorensen!!
11#pragma once
12
13
14#include "acme/prototype/collection/string_list.h"
15#include "acme/windowing/windowing.h"
16
17namespace acme
18{
19
20namespace sandbox_windowing
21{
22
23
24class window;
25
26
27
28class CLASS_DECL_ACME windowing :
30{
31protected:
32
33
34 //map_base < oswindow, ::pointer < ::acme::windowing::window> > m_oswindowmap;
35 ::pointer_array < ::acme::windowing::window > m_acmewindowingwindowa;
36
37
38public:
39
40
41 ::pointer<::acme::sandbox_windowing::window> m_pwindowKeyboardFocus;
42 //::pointer<::acme::sandbox_windowing::window> m_pacmewindowingwindowMouseCapture;
43 ::pointer<::acme::sandbox_windowing::window> m_pwindowActive;
44
45
46 ::pointer<::acme::sandbox_windowing::host_interaction> m_phostinteraction;
47
48 ::pointer<::acme::windowing::window> m_pwindowApplicationHost;
49
50 itask m_itask;
51
52 ::procedure_list_base m_procedurelist;
53
54
55 windowing();
56 ~windowing() override;
57
58
59 void initialize(::particle * pparticle) override;
60
61
62 bool is_branch_current() const override;
63
64
65 void initialize_windowing() override;
66
67 void finalize_windowing() override;
68
69 ::particle * defer_initialize_host_window(const ::i32_rectangle* lpcrect) override;
70
71 ::acme::windowing::window* get_application_host_window() override;
72 virtual bool targeted_keyboard_messages();
73
74 void _will_finish_launching() override;
75
76 //::windowing::display* display() override;
77
78
79 //virtual ::pointer<::windowing::cursor>load_default_cursor(enum_cursor ecursor) override;
80 ::pointer < ::acme::windowing::window > get_new_window() override;
81
82 // ::windowing::window* new_window(::windowing::window* pimpl) override;
83 //
84 void erase_window(::acme::windowing::window* pwindow) override;
85
86 //::acme::windowing::window* acme_windowing_from_HWND(void *) override;
87
88 virtual void _message_handler(void* p) override;
89
90 ::acme::windowing::window * get_keyboard_focus(::thread* pthread) override;
91
92 ::acme::windowing::window * get_mouse_capture(::thread* pthread) override;
93
94
95 bool defer_release_mouse_capture(::thread * pthread, ::acme::windowing::window * pwindow) override;
96
97
98 //void clear_keyboard_focus(::user::element * pelementGainingFocusIfAny = nullptr) override;
99
100
101 //void windowing_post(const ::procedure& procedure) override;
102
103 //virtual bool aaa_x11_runnable_step();
104
105
106 //::windowing::text_editor_interface* get_text_editor_interface() override;
107
108
109 //using ::acme::windowing::windowing::get_cursor;
110
111
112 //::pointer<::windowing::cursor>get_cursor(enum_cursor ecursor) override;
113
114
115
116
117};
118
119
120} // namespace sandbox_windowing
121
122
123} // namespace acme
Definition window.h:26
Definition window.h:50
Definition windowing.h:43
Definition types.h:93
include "aura/graphics/image/context.h"
Definition aaaa__defer.h:32