summaryrefslogtreecommitdiff
path: root/src/font.hpp
diff options
context:
space:
mode:
authorJonathan Bradley <jcb@pikum.xyz>2025-09-23 09:44:19 -0400
committerJonathan Bradley <jcb@pikum.xyz>2025-09-23 09:44:31 -0400
commitb1409537eb5a3bbdbae892cf3f6a451dee5472a9 (patch)
treea8b6f04eda5f803a5993bcc66fbe25eaea560790 /src/font.hpp
parent2e72d3b1b2688f2f20a313885e1bf90eedc41093 (diff)
pke: ui box text center first-pass
Diffstat (limited to 'src/font.hpp')
-rw-r--r--src/font.hpp41
1 files changed, 19 insertions, 22 deletions
diff --git a/src/font.hpp b/src/font.hpp
index 75035b8..fce99a0 100644
--- a/src/font.hpp
+++ b/src/font.hpp
@@ -16,28 +16,25 @@ TypeSafeInt_H(FontRenderIndex, uint16_t, 0xFFFF);
TypeSafeInt_H(FONT_GLYPH_CHAR_FLAG, uint8_t, 0xFF);
TypeSafeInt_H(FONT_RENDER_SURFACE_AREA_TYPE_FLAG, uint8_t, 0xFF);
-constexpr FONT_GLYPH_CHAR_FLAG FONT_GLYPH_CHAR_FLAGS_NONE
- = FONT_GLYPH_CHAR_FLAG((0 << 0));
-constexpr FONT_GLYPH_CHAR_FLAG FONT_GLYPH_CHAR_FLAGS_CONTROL
- = FONT_GLYPH_CHAR_FLAG((1 << 0));
-constexpr FONT_GLYPH_CHAR_FLAG FONT_GLYPH_CHAR_FLAGS_WHITESPACE
- = FONT_GLYPH_CHAR_FLAG((1 << 1));
-constexpr FONT_GLYPH_CHAR_FLAG FONT_GLYPH_CHAR_FLAGS_ALIGN_ADVANCE
- = FONT_GLYPH_CHAR_FLAG((1 << 2));
-constexpr FONT_GLYPH_CHAR_FLAG FONT_GLYPH_CHAR_FLAGS_NEW_LINE
- = FONT_GLYPH_CHAR_FLAG((1 << 3));
+const FONT_GLYPH_CHAR_FLAG FONT_GLYPH_CHAR_FLAGS_NONE
+ = FONT_GLYPH_CHAR_FLAG(0u);
+const FONT_GLYPH_CHAR_FLAG FONT_GLYPH_CHAR_FLAGS_CONTROL
+ = FONT_GLYPH_CHAR_FLAG((1u << 0));
+const FONT_GLYPH_CHAR_FLAG FONT_GLYPH_CHAR_FLAGS_WHITESPACE
+ = FONT_GLYPH_CHAR_FLAG((1u << 1));
+const FONT_GLYPH_CHAR_FLAG FONT_GLYPH_CHAR_FLAGS_ALIGN_ADVANCE
+ = FONT_GLYPH_CHAR_FLAG((1u << 2));
+const FONT_GLYPH_CHAR_FLAG FONT_GLYPH_CHAR_FLAGS_NEW_LINE
+ = FONT_GLYPH_CHAR_FLAG((1u << 3));
-constexpr FONT_RENDER_SURFACE_AREA_TYPE_FLAG FONT_RENDER_SURFACE_AREA_TYPE_FLAGS_NONE
- = FONT_RENDER_SURFACE_AREA_TYPE_FLAG(0);
-constexpr FONT_RENDER_SURFACE_AREA_TYPE_FLAG FONT_RENDER_SURFACE_AREA_TYPE_FLAGS_GROW_VERTICAL
- = FONT_RENDER_SURFACE_AREA_TYPE_FLAG((1 << 0));
-constexpr FONT_RENDER_SURFACE_AREA_TYPE_FLAG FONT_RENDER_SURFACE_AREA_TYPE_FLAGS_GROW_HORIZONTAL
- = FONT_RENDER_SURFACE_AREA_TYPE_FLAG((1 << 1));
-
-constexpr FONT_RENDER_SURFACE_AREA_TYPE_FLAG FONT_RENDER_SURFACE_AREA_TYPE_FLAGS_STATIC
- = FONT_RENDER_SURFACE_AREA_TYPE_FLAG(0);
-constexpr FONT_RENDER_SURFACE_AREA_TYPE_FLAG FONT_RENDER_SURFACE_AREA_TYPE_FLAGS_FLUID
- = FONT_RENDER_SURFACE_AREA_TYPE_FLAG((1 << 0) | (1 << 1));
+const FONT_RENDER_SURFACE_AREA_TYPE_FLAG FONT_RENDER_SURFACE_AREA_TYPE_FLAGS_NONE
+ = FONT_RENDER_SURFACE_AREA_TYPE_FLAG(0u);
+const FONT_RENDER_SURFACE_AREA_TYPE_FLAG FONT_RENDER_SURFACE_AREA_TYPE_FLAGS_CENTER_VERTICAL
+ = FONT_RENDER_SURFACE_AREA_TYPE_FLAG((1u << 0));
+const FONT_RENDER_SURFACE_AREA_TYPE_FLAG FONT_RENDER_SURFACE_AREA_TYPE_FLAGS_CENTER_HORIZONTAL
+ = FONT_RENDER_SURFACE_AREA_TYPE_FLAG((1u << 1));
+const FONT_RENDER_SURFACE_AREA_TYPE_FLAG FONT_RENDER_SURFACE_AREA_TYPE_FLAGS_CENTER_BOTH
+ = FONT_RENDER_SURFACE_AREA_TYPE_FLAG((1u << 0) | (1u << 1));
struct FontRenderHandle {
FontTypeIndex index_ft;
@@ -65,7 +62,7 @@ struct FontRenderSettings {
float char_spacing_scale = 1.f;
glm::ivec2 surface_area_size;
glm::ivec2 surface_area_pos;
- FONT_RENDER_SURFACE_AREA_TYPE_FLAG surface_area_type_flags; // TODO
+ FONT_RENDER_SURFACE_AREA_TYPE_FLAG surface_area_type_flags;
};
struct FontRender : public Entity_Base {
uint32_t *glyph_indices = nullptr;