acme
Foundational cross-platform layer of the ca2 framework
Loading...
Searching...
No Matches
aaa_directx_application.h
1#pragma once
2
3
4namespace universal_windows
5{
6
7
8 ref class directx_framework_impact :
9 public impact
10 {
11 internal:
12
13
14 ::windowing::window * m_pimpl;
15
16 ::winrt::Windows::Foundation::i32_point m_pointLastCursor;
17
18 ::u32 m_dwMouseMoveThrottle;
19
20 ::duration m_durationLastMouseMove;
21
22 ::winrt::Windows::UI::ViewManagement::UISettings ^ m_puisettings;
23
24 String ^ m_strId;
25
26 //::winrt::Windows::UI::Core::CoreWindow^ m_window;
27
28 impact^ m_impact;
29
30
31 directx_base ^ m_directx;
32
33 bool m_bFontopusShift;
34
35 ::pointer < ::mutex > m_pmutex;
36
37 //::platform::system * system();
38
39 //::platform::application * m_papplication;
40
41 ::pointer<directx_interaction> m_pdxi;
42
43 bool m_bLeftButton;
44
45 bool m_bMiddleButton;
46
47 bool m_bRightButton;
48
49 ::winrt::Windows::Foundation::Rect m_rectangleLastWindowRect;
50 ::winrt::Windows::Foundation::Rect m_rectangleInputContentRect;
51 ::winrt::Windows::Foundation::Rect m_rectangleInputSelectionRect;
52
53
54 directx_framework_impact(::platform::system * psystem,String ^ strId);
55
56
57 void install_directx_application_message_routing();
58
59 void initialize_directx_application();
60
61
62
63 ::platform::system * get_context_system() const;
64
65 public:
66
67
68
69
70
71 // IFrameworkView Methods
72 virtual void Initialize(_In_ ::winrt::Windows::ApplicationModel::Core::CoreApplicationView^ applicationView) override;
73 virtual void SetWindow(_In_ ::winrt::Windows::UI::Core::CoreWindow^ window)override;
74 virtual void Load(_In_ String^ entryPoint)override;
75 virtual void Run()override;
76 virtual void Uninitialize()override;
77
78
79 virtual ::winrt::Windows::Foundation::Rect window_rectangle() override;
80 virtual ::winrt::Windows::Foundation::i32_point get_cursor_position() override;
81
82 virtual ::winrt::Windows::Foundation::Rect get_input_content_rect() override;
83 virtual ::winrt::Windows::Foundation::Rect get_input_selection_rect() override;
84
85
86 virtual ~directx_framework_impact();
87
88 private:
89
90 void OnUISettingsColorValuesChange(::winrt::Windows::UI::ViewManagement::UISettings^, Platform::Object^);
91
92
93 // Event Handlers
94 void OnWindowSizeChanged(
95 _In_ ::winrt::Windows::UI::Core::CoreWindow^ sender,
96 _In_ ::winrt::Windows::UI::Core::WindowSizeChangedEventArgs^ args
97 );
98
99 void DpiChanged(::winrt::Windows::Graphics::Display::DisplayInformation ^ sender, Object ^ obj);
100
101 void DisplayContentsInvalidated(::winrt::Windows::Graphics::Display::DisplayInformation ^ sender, Object ^ obj);
102
103 void OnActivated(
104 _In_ ::winrt::Windows::ApplicationModel::Core::CoreApplicationView^ applicationView,
105 _In_ ::winrt::Windows::ApplicationModel::Activation::IActivatedEventArgs^ args
106 );
107
108 void OnSuspending(
109 _In_ Object^ sender,
110 _In_ ::winrt::Windows::ApplicationModel::SuspendingEventArgs^ args
111 );
112
113 void OnResuming(
114 _In_ Object^ sender,
115 _In_ Object^ args
116 );
117
118
119 void OnWindowVisibilityChanged(::winrt::Windows::UI::Core::CoreWindow^, ::winrt::Windows::UI::Core::VisibilityChangedEventArgs^ args);
120
121 void OnPointerMoved(::winrt::Windows::UI::Core::CoreWindow^, ::winrt::Windows::UI::Core::PointerEventArgs^ args);
122
123 void OnCharacterReceived(::winrt::Windows::UI::Core::CoreWindow^, ::winrt::Windows::UI::Core::CharacterReceivedEventArgs^ args);
124 void OnKeyDown(::winrt::Windows::UI::Core::CoreWindow^, ::winrt::Windows::UI::Core::KeyEventArgs^ args);
125 void OnKeyUp(::winrt::Windows::UI::Core::CoreWindow^, ::winrt::Windows::UI::Core::KeyEventArgs^ args);
126 void OnPointerPressed(::winrt::Windows::UI::Core::CoreWindow^, ::winrt::Windows::UI::Core::PointerEventArgs^ args);
127 void OnPointerReleased(::winrt::Windows::UI::Core::CoreWindow^, ::winrt::Windows::UI::Core::PointerEventArgs^ args);
128
129
130 //comptr<ID2D1SolidColorBrush> m_blackBrush;
131 //comptr<IDWriteTextFormat> m_textFormat;
132 //comptr<IDWriteTypography> m_textTypography;
133 //comptr<IDWriteTextLayout> m_textLayout;
134 //SampleOverlay^ m_sampleOverlay;
135
136 };
137
138
139 ref class directx_application_source :
140 ::winrt::Windows::ApplicationModel::Core::IFrameworkViewSource
141 {
142 internal:
143
144 ::platform::system * system();
145
146 string m_strId;
147
148 directx_application_source(::platform::system * paxissystem,const ::scoped_string & scopedstrId);
149
150 public:
151
152 virtual ::winrt::Windows::ApplicationModel::Core::IFrameworkView ^ CreateImpact();
153
154 };
155
156
157 CLASS_DECL_ACME directx_application_source ^ new_directx_application_source(::platform::system * psystem, const ::scoped_string & scopedstr);
158
159
160} // namespace universal_windows
161
162
163
Definition system.h:53
Definition aaa_directx_application.h:141
Definition aaa_directx.h:33
Definition ___serialization_draft.h:150