forstio-window/driver/window_xcb.h

35 lines
673 B
C++

#pragma once
#include <X11/Xlib-xcb.h>
#include <X11/Xlib.h>
#include <xcb/xcb.h>
#include <string>
#include "window.h"
namespace gin {
class XcbDevice;
class XcbWindow final : public Window {
public:
XcbDevice &device;
xcb_window_t xcb_window;
xcb_colormap_t xcb_colormap;
VideoMode video_mode;
std::string window_title;
public:
XcbWindow(XcbDevice &device, xcb_window_t xcb_window,
xcb_colormap_t xcb_colormap, const VideoMode &video_mode,
std::string_view title_view);
~XcbWindow();
void show() override;
void hide() override;
const VideoMode &videoMode() const override;
const std::string_view title() const override;
};
} // namespace gin