Some window interface cleaning

This commit is contained in:
James Grogan 2022-11-11 10:35:41 +00:00
parent 1180e576fa
commit 02ebb9a54b
12 changed files with 169 additions and 141 deletions

View file

@ -3,7 +3,6 @@
#include "AbstractUiInterface.h"
#include <memory>
#include <map>
class DesktopManager;
class GlxInterface;
@ -27,43 +26,38 @@ namespace mt
class XcbInterface : public AbstractUIInterface
{
public:
XcbInterface();
XcbInterface(DesktopManager* desktopManager);
~XcbInterface();
void initialize(DesktopManager* desktopManager) override;
void initialize() override;
void loop(DesktopManager* desktopManager) override;
void loop() override;
void shutDown() override;
void showWindow(mt::Window* window) override;
void addWindow(mt::Window* window, DesktopManager* desktopManager) override;
void CreateOpenGlDrawable(mt::Window* window);
void addWindow(mt::Window* window) override;
private:
void onPaint(DesktopManager* desktopManager);
void onPaint();
void onEventsDispatched();
void onLoopCompleted();
void onExposeEvent(xcb_expose_event_t* event);
void InitializeOpenGl();
void initializeOpenGl();
void createGraphicsContext();
void createOpenGlDrawable(mt::Window* window);
void Connect();
void connect();
void updateScreen();
void mapWindow(mt::Window* window);
void UpdateScreen(DesktopManager* desktopManager);
void OnExposeEvent(xcb_expose_event_t* event, DesktopManager* desktopManager);
uint32_t GetEventMask();
void MapWindow(mt::Window* window);
void CreateGraphicsContext(DesktopManager* desktopManager);
void onEventsDispatched(DesktopManager* desktopManager);
void OnLoopCompleted(DesktopManager* desktopManagers);
uint32_t getEventMask();
private:
DesktopManager* mDesktopManager{nullptr};
xcb_connection_t* mConnection;
_XDisplay* mX11Display;
GlxInterfacePtr mGlxInterface;