39 lines
945 B
C++
39 lines
945 B
C++
// Copyright 2008 Dolphin Emulator Project
|
|
// SPDX-License-Identifier: GPL-2.0-or-later
|
|
|
|
#pragma once
|
|
|
|
#include <X11/Xlib.h>
|
|
#include <X11/Xutil.h>
|
|
#include <X11/keysym.h>
|
|
#include <memory>
|
|
#include <thread>
|
|
|
|
class GLX11Window
|
|
{
|
|
public:
|
|
GLX11Window(Display* display, Window parent_window, Colormap color_map, Window window, int width,
|
|
int height);
|
|
~GLX11Window();
|
|
|
|
Display* GetDisplay() const { return m_display; }
|
|
Window GetParentWindow() const { return m_parent_window; }
|
|
Window GetWindow() const { return m_window; }
|
|
int GetWidth() const { return m_width; }
|
|
int GetHeight() const { return m_height; }
|
|
|
|
void UpdateDimensions();
|
|
|
|
static std::unique_ptr<GLX11Window> Create(Display* display, Window parent_window,
|
|
XVisualInfo* vi);
|
|
|
|
private:
|
|
Display* m_display;
|
|
Window m_parent_window;
|
|
Colormap m_color_map;
|
|
Window m_window;
|
|
|
|
int m_width;
|
|
int m_height;
|
|
};
|