diff options
| author | Jonathan Bradley <jcb@pikum.xyz> | 2025-09-23 09:44:19 -0400 |
|---|---|---|
| committer | Jonathan Bradley <jcb@pikum.xyz> | 2025-09-23 09:44:31 -0400 |
| commit | b1409537eb5a3bbdbae892cf3f6a451dee5472a9 (patch) | |
| tree | a8b6f04eda5f803a5993bcc66fbe25eaea560790 /src/font.hpp | |
| parent | 2e72d3b1b2688f2f20a313885e1bf90eedc41093 (diff) | |
pke: ui box text center first-pass
Diffstat (limited to 'src/font.hpp')
| -rw-r--r-- | src/font.hpp | 41 |
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; |
