Files
Archimedes/layers/baseLayer.h
2024-08-10 21:20:28 -05:00

32 lines
1.0 KiB
C++

#pragma once
#include "terminal.h"
#include "layer.h"
#include "eventHandler.h"
class BaseLayer : public Layer {
public:
BaseLayer();
~BaseLayer();
virtual void onAttach();
virtual void onDetach();
virtual void onUpdate();
virtual bool onEvent(const Event*);
protected:
virtual bool onMouseButtonPressed(const MouseButtonEvent*);
virtual bool onMouseButtonReleased(const MouseButtonEvent*);
virtual bool onMouseMoved(const MouseMovedEvent*);
virtual bool onMouseScrolled(const MouseScrolledEvent*);
virtual bool onKeyPressed(const KeyEvent*);
virtual bool onKeyReleased(const KeyEvent*);
virtual bool onKeyTyped(const KeyTypedEvent*);
virtual bool onWindowClose(const WindowEvent*);
virtual bool onWindowFocus(const WindowEvent*);
virtual bool onWindowFocusLost(const WindowEvent*);
virtual bool onWindowMoved(const WindowEvent*);
virtual bool onWindowResize(const WindowEvent*);
};