raycaster/gui/guecstra.hpp

22 lines
533 B
C++

#pragma once
#include "components.hpp"
#include "events.hpp"
#include <guecs/ui.hpp>
#include "textures.hpp"
namespace guecs {
Clickable make_action(DinkyECS::World& target, Events::GUI event);
Clickable make_action(DinkyECS::World& target, Events::GUI event, std::any data);
struct GrabSource {
DinkyECS::Entity world_entity;
std::function<void()> commit;
DinkyECS::Entity grab();
void move(sf::Vector2i position);
};
struct DropTarget {
std::function<bool(DinkyECS::Entity entity)> commit;
};
}