app_update, print events

This commit is contained in:
krzosa
2024-12-29 10:26:42 +01:00
parent a30a897272
commit 6939170478
11 changed files with 68 additions and 68 deletions

View File

@@ -80,10 +80,10 @@ void meta_app(ma_arena_t *arena) {
// Javascript
{
int name_idx = row_findi(keys->first, "name");
int js1_idx = row_findi(keys->first, "js1");
int js2_idx = row_findi(keys->first, "js2");
int filter_out_idx = row_findi(keys->first, "jf");
i32 name_idx = row_findi(keys->first, "name");
i32 js1_idx = row_findi(keys->first, "js1");
i32 js2_idx = row_findi(keys->first, "js2");
i32 filter_out_idx = row_findi(keys->first, "jf");
sb8_stmtf(c, "\n#if PLATFORM_WASM");
@@ -99,7 +99,7 @@ void meta_app(ma_arena_t *arena) {
s8_t js[] = {row_geti(row, js1_idx)->string, row_geti(row, js2_idx)->string};
for (i32 i = 0; i < lengthof(js); i += 1) {
if (s8_equal(js[i], s8_lit("XXX"))) continue;
sb8_stmtf(c, "else if (s8_equal_ex(key, s8_lit(\"%S\"), s8_ignore_case)) return (wasm_key_map_t){app_key_%S, %d};", js[i], name, (int)filter_out);
sb8_stmtf(c, "else if (s8_equal_ex(key, s8_lit(\"%S\"), s8_ignore_case)) return (wasm_key_map_t){app_key_%S, %d};", js[i], name, (i32)filter_out);
}
}
sb8_stmtf(c, "return (wasm_key_map_t){0};");
@@ -110,9 +110,9 @@ void meta_app(ma_arena_t *arena) {
// Windows
{
int name_idx = row_findi(keys->first, "name");
int w1i = row_findi(keys->first, "windows1");
int w2i = row_findi(keys->first, "windows2");
i32 name_idx = row_findi(keys->first, "name");
i32 w1i = row_findi(keys->first, "windows1");
i32 w2i = row_findi(keys->first, "windows2");
sb8_stmtf(c, "\n#if PLATFORM_WINDOWS");
sb8_stmtf(c, "void w32_key_dispatch(WPARAM wparam, void (*handle_key)(app_key_t)) {");

View File

@@ -8,8 +8,7 @@ f64 wasm_measure_text(isize str, i32 len, isize font_str, i32 font_len, i32 fon
f64 wasm_get_font_height(isize font_str, i32 font_len, i32 font_size);
void wasm_set_clip(f64 x, f64 y, f64 w, f64 h);
void on_update();
void app_update(app_event_t *events);
void app_update(ma_arena_t *perm_arena, app_event_t *events, i32 event_count);
extern char __heap_base;
ma_arena_t wasm_perm_arena;
@@ -30,7 +29,7 @@ b32 wasm_event_failed_to_queue;
f64 wasm_last_time = 0;
void write_to_console(char *string) {
int len = str_len(string);
i32 len = str_len(string);
wasm_write_to_console((isize)string, len);
}
@@ -47,7 +46,7 @@ f64 get_font_height(void) {
return wasm_get_font_height((isize) font_face, font_face_len, 20*wasm_dpr) / wasm_dpr;
}
f64 measure_text_ex(char *str, int len) {
f64 measure_text_ex(char *str, i32 len) {
return wasm_measure_text((isize)str, len, (isize) font_face, font_face_len, 20*wasm_dpr) / wasm_dpr;
}
@@ -55,15 +54,15 @@ f64 measure_text(char *str) {
return measure_text_ex(str, str_len(str));
}
void draw_text(v2f64_t pos, v4f32_t color, char *str, int len) {
wasm_draw_text((isize)str, len, wasm_dpr * pos.x, wasm_dpr * pos.y, (isize) font_face, font_face_len, 20*wasm_dpr, color.r * 255.f, color.g * 255.f, color.b * 255.f, color.a);
void draw_text(v2f64_t pos, v4f32_t color, s8_t string) {
wasm_draw_text((isize)string.str, string.len, wasm_dpr * pos.x, wasm_dpr * pos.y, (isize) font_face, font_face_len, 20*wasm_dpr, color.r * 255.f, color.g * 255.f, color.b * 255.f, color.a);
}
void draw_textf(v2f64_t pos, char *str, ...) {
char buff[1024];
va_list args;
va_start(args, str);
int len = stbsp_vsnprintf(buff, sizeof(buff), str, args);
i32 len = stbsp_vsnprintf(buff, sizeof(buff), str, args);
va_end(args);
wasm_draw_text((isize)buff, len, wasm_dpr * pos.x, wasm_dpr * pos.y, (isize) font_face, font_face_len, 20*wasm_dpr, 0, 0, 0, 1);
@@ -173,7 +172,7 @@ WASM_EXPORT void wasm_key_up(char *key, b32 ctrl, b32 shift, b32 alt, b32 meta)
wasm_key_map_t map = wasm_map_key_string_to_app_key(key8);
if (map.key != app_key_invalid) {
wasm_add_event((app_event_t){
.kind = app_event_kind_key_down,
.kind = app_event_kind_key_up,
.key = map.key,
.ctrl = ctrl,
.shift = shift,
@@ -193,7 +192,7 @@ WASM_EXPORT void wasm_update(f64 time, f64 width, f64 height, f64 dpr) {
}
wasm_dpr = dpr;
on_update();
app_update(&wasm_perm_arena, wasm_events.data, wasm_events.len);
wasm_events.len = 0;
wasm_last_time = time;

View File

@@ -117,8 +117,8 @@ int WinMain(HINSTANCE hInstance, HINSTANCE hPrevInstance, LPSTR lpCmdLine, int n
continue;
}
for (int y = 0; y < 720; y++) {
for (int x = 0; x < 1280; x++) {
for (i32 y = 0; y < 720; y++) {
for (i32 x = 0; x < 1280; x++) {
mem[x + y * 1280] = 0xFFFF0000;
}
}