#include #include #include #include #include #include "ui.h" #include "lua.h" static void activate(GtkApplication* app, struct application_state* state) { printf("gtk: ready\n"); page_application_init(state); int status = lua_init_state(state->L, state); if (status != 0) { fprintf(stderr, "error: lua_init_state failed with non-zero error code %d\n", status); return; } page_application_show(state); lua_close(state->L); } int main(int argc, char** argv) { lua_State* L; int status = 1; L = luaL_newstate(); if (!L) { fprintf(stderr, "error: failed to create lua state"); return -1; } struct application_state* state = page_application_new(); state->L = L; g_signal_connect(state->gapp, "activate", G_CALLBACK(activate), state); status = g_application_run(G_APPLICATION(state->gapp), argc, argv); g_object_unref(state->gapp); return status; }