restructure project for dynamic linking

This commit is contained in:
2025-02-26 12:12:31 -06:00
parent ca683b50e7
commit 1922896a1a
40 changed files with 11 additions and 0 deletions

32
modules/gui/layers/layerstack.h Executable file
View File

@@ -0,0 +1,32 @@
#pragma once
#include "engine.h"
#include "layer.h"
class LayerStack {
public:
LayerStack();
~LayerStack();
void pushLayer(Layer*);
void pushOverlay(Layer*);
void popLayer(Layer*);
void popOverlay(Layer*);
void propagateEvent(const Event*);
void updateLayers();
void shutdown();
inline Layer* getLayer(unsigned long i) { return layers.at(i); }
std::vector<Layer*>::iterator begin() {return layers.begin();}
std::vector<Layer*>::iterator end() {return layers.end();}
private:
std::vector<Layer*> layers;
std::vector<Layer*>::iterator insert;
bool eventHandled;
};