Zen
0.3.0
Loading...
Searching...
No Matches
ZEN_LinuxWindow.h
1
#pragma once
2
3
#include <zen/core/ZEN_Core.h>
4
#include <zen/core/ZEN_Window.h>
5
#include <zen/renderer/ZEN_GraphicsContext.h>
6
#include <zen/zen_pch.h>
7
8
namespace
Zen {
9
// TEMP
10
struct
WindowData
{
11
SDL_Window *window;
12
std::unique_ptr<GraphicsContext> context;
13
};
14
15
class
LinuxWindow :
public
Window
{
16
public
:
17
LinuxWindow(
const
WindowProperties
&properties);
18
virtual
~LinuxWindow();
19
20
void
onUpdate()
override
;
21
uint32_t getWidth()
override
;
22
uint32_t getHeight()
override
;
23
24
void
setVSync(
bool
enabled)
override
;
25
bool
isVSyncEnabled()
const override
;
26
void
toggleFullscreen()
override
;
27
28
void
emitErrorMessage(
const
char
*message)
override
;
29
30
// TEMP
31
WindowData
&getWindowData();
32
WindowProperties
&getProperties();
33
34
bool
resizeEvent(
const
ZenEvent
&event);
35
bool
mouseClickEvent(
const
ZenEvent
&event);
36
37
bool
onEvent(
const
ZenEvent
&event)
override
;
38
int
getPriority()
const override
;
39
40
void
*nativeWindow()
const override
;
41
GraphicsContext
&context()
override
;
42
const
GraphicsContext
&context()
const override
;
43
44
private
:
45
virtual
void
init(
const
WindowProperties
&properties);
46
virtual
void
shutdown();
47
48
// TEMP
49
WindowData
m_windowData;
50
51
WindowProperties
m_windowProperties;
52
};
53
};
// namespace Zen
Zen::GraphicsContext
Definition
ZEN_GraphicsContext.h:6
Zen::Window
Definition
ZEN_Window.h:32
Zen::WindowData
Definition
ZEN_LinuxWindow.h:10
Zen::WindowProperties
Definition
ZEN_Window.h:12
Zen::ZenEvent
Definition
ZEN_Event.h:87
engine
zen
platform
linux
ZEN_LinuxWindow.h
Generated by
1.14.0