38 lines
837 B
C++
38 lines
837 B
C++
#pragma once
|
|
|
|
#include <uf/config.h>
|
|
#include <uf/ext/ext.h>
|
|
#include <uf/engine/entity/entity.h>
|
|
#include <uf/engine/scene/scene.h>
|
|
#include <uf/utils/math/vector.h>
|
|
#include <uf/utils/renderer/renderer.h>
|
|
|
|
#include "behavior.h"
|
|
|
|
namespace pod {
|
|
struct GlyphBox {
|
|
struct {
|
|
float x, y, w, h;
|
|
} box;
|
|
uint64_t code;
|
|
pod::Vector3f color;
|
|
};
|
|
}
|
|
|
|
namespace ext {
|
|
class EXT_API Gui : public uf::Object {
|
|
public:
|
|
// typedef uf::Mesh<pod::Vertex_3F2F3F, uint16_t> mesh_t;
|
|
// typedef uf::Mesh<pod::Vertex_3F2F3F, uint16_t> glyph_mesh_t;
|
|
// Gui();
|
|
uf::stl::vector<pod::GlyphBox> generateGlyphs( const uf::stl::string& = "" );
|
|
void load( const uf::Image& );
|
|
};
|
|
namespace gui {
|
|
struct Size {
|
|
pod::Vector2ui current = {};
|
|
pod::Vector2ui reference = {};
|
|
};
|
|
extern Size size;
|
|
}
|
|
} |