getHeight :: () -> i32 #foreign "heartbreak" "window_get_height" ---
setDimensions :: (width, height: i32) -> void #foreign "heartbreak" "window_set_dimensions" ---
setShouldClose :: (close: bool) -> void #foreign "heartbreak" "window_set_should_close" ---
+setTitle :: (title: str) -> void #foreign "heartbreak" "window_set_title" ---
getDimensions :: () => getWidth(), getHeight();
return NULL;
}
+HEARTBREAK_DEF(set_title, (WASM_I32, WASM_I32), ()) {
+ char* str_data = wasm_memory_data(wasm_memory) + params->data[0].of.i32;
+ u32 str_size = params->data[1].of.i32;
+
+ char *title = alloca(str_size + 1);
+ strncpy(title, str_data, str_size);
+ title[str_size] = '\0';
+
+ glfwSetWindowTitle(glfw_window, title);
+ return NULL;
+}
+
HEARTBREAK_DEF(get_property, (WASM_I32), (WASM_I32)) {
return NULL;
}
HEARTBREAK_FUNC(get_height)
HEARTBREAK_FUNC(set_dimensions)
HEARTBREAK_FUNC(set_should_close)
+ HEARTBREAK_FUNC(set_title)
HEARTBREAK_FUNC(get_property)
HEARTBREAK_FUNC(set_property)