Covellite++  Version: 2.3.0 Revision: 2580 Platform: x64 Build: 15:23 16.10.2020
Кроссплатформенный фреймворк для разработки приложений на С++
Window.hpp
1 
2 #pragma once
3 #include <Covellite/Predefined.hpp>
4 #include <Covellite/Events/Events.hpp>
5 #include <Covellite/App/IWindow.hpp>
6 #include <Covellite/Os/IWindow.hpp>
7 
8 namespace covellite
9 {
10 
11 namespace app { class IApplication; }
12 
13 namespace os
14 {
15 
39 class Window final :
42 {
44 
45 public:
46  // Интерфейс events::IEvents:
47  operator Events_t (void) const override;
48 
49 public:
50  // Интерфейс os::IWindow:
51  Any_t GetHandle(void) const override;
52  Rect GetClientRect(void) const override;
53  const Configuration_t & GetConfiguration(void) const override;
54 
55 private:
56  void ActivateApplicationEvents(void);
57  void ActivateResizeEvents(void);
58  void ActivateMouseEvents(void);
59  void ActivateKeyEvents(void);
60 
61 private:
62  Events_t m_Events;
63  long m_MinWindowWidth = 0;
64  long m_MinWindowHeight = 0;
65  Any_t m_Handle;
66  Configuration_t m_Configuration;
67  size_t m_LastTypeSizeMessage;
68 
69 public:
70  explicit Window(const ::covellite::app::IApplication &);
71  ~Window(void);
72 
73 private:
74  FRIEND_TEST(Window_windows_test, /*DISABLED_*/Test_SetWindowLongPtr);
75 };
76 
77 } // namespace os
78 
79 } // namespace covellite
covellite::os::Configuration
Класс входит в проект Covellite.Os Класс доступа к текущим настройкам системы.
Definition: Configuration.hpp:29
covellite::os::Window::GetConfiguration
const Configuration_t & GetConfiguration(void) const override
Функция получения объекта доступа к параметрам системы.
Definition: Window.cpp:26
covellite::os::Window
Класс входит в проект Covellite.Os Класс окна операционной системы программы.
Definition: Window.hpp:42
covellite::os::Window::GetClientRect
Rect GetClientRect(void) const override
Функция получения размеров клиентской области окна.
Definition: Window.android.cpp:49
covellite::os::IWindow
Класс входит в проект Covellite.Os Интерфейсный класс окна операционной системы программы.
Definition: IWindow.hpp:32
covellite::app::IWindow
Класс входит в проект Covellite.App Интерфейсный класс для классов окон фреймворка.
Definition: IWindow.hpp:32
covellite::events::Events
Класс входит в проект Covellite.Events Класс для работы с событиями фреймворка.
Definition: Events.hpp:36
covellite::os::Window::GetHandle
Any_t GetHandle(void) const override
Функция получения хэндла окна для конкретной операционной системы.
Definition: Window.cpp:17