diff options
| author | Riley Beckett <rbeckettvt@gmail.com> | 2025-10-23 00:07:26 -0400 |
|---|---|---|
| committer | Riley Beckett <rbeckettvt@gmail.com> | 2025-10-23 00:07:26 -0400 |
| commit | 9d8db4146d025e3a967700414a9fc68fa186045e (patch) | |
| tree | 9d0e0d6dd46a2f580f4b2fb4e1fbba2b0c6fb11e /font.c | |
| parent | 90d6b2a866c6da29921dfae3d684203fd232ea74 (diff) | |
add basic cursor movement
Diffstat (limited to 'font.c')
| -rw-r--r-- | font.c | 9 |
1 files changed, 9 insertions, 0 deletions
@@ -156,6 +156,15 @@ int atlas_get_strwidth(client_state* state, const char* str) { return (int)ceil(width); } +int atlas_get_strwidth_len(client_state* state, const char* str, size_t len) { + float width = 0; + // TODO - UNICODE MAKE WORKY + for (int i = 0; i < len; i++) { + width += ceil(state->atlas.metrics[(int)str[i]].advance_x); + } + return (int)ceil(width); +} + void atlas_calc_item_widths(client_state* state) { if (state->items) { array_for_all(item_t, item, state->items) { |
