MultiTestApp *multitestapp_new(void) { MultiTestApp *app= MEM_mallocN(sizeof(*app), "multitestapp_new"); GHOST_EventConsumerHandle consumer= GHOST_CreateEventConsumer(multitest_event_handler, app); app->sys= GHOST_CreateSystem(); if (!app->sys) fatal("Unable to create ghost system"); if (!GHOST_AddEventConsumer(app->sys, consumer)) fatal("Unable to add multitest event consumer "); app->main= mainwindow_new(app); if (!app->main) fatal("Unable to create main window"); app->logger= loggerwindow_new(app); if (!app->logger) fatal("Unable to create logger window"); app->extra= NULL; app->exit= 0; return app; }
int main(int argc, char *argv[]) { g_debug("Initializing lua"); lua_state = luaL_newstate(); luaL_openlibs(lua_state); g_debug("Initializing libtetris"); tetris_init(); tetris_plugin_init(lua_state); tetris_lua_functions_setup(); g_debug("Initializing GLib and GTK"); gdk_threads_init(); gtk_init(&argc, &argv); g_debug("Creating main window"); mainwindow = mainwindow_new(); g_signal_connect(G_OBJECT(mainwindow->window), "delete-event", G_CALLBACK(quit_everything), NULL); g_signal_connect(G_OBJECT(mainwindow->window), "destroy-event", G_CALLBACK(quit_everything), NULL); g_debug("Initializing clients plugins"); plugins_init(lua_state, mainwindow); g_debug("Loading config.lua"); if (luaL_loadfile(lua_state, "config.lua") != 0 || lua_pcall(lua_state, 0, 0, 0) != 0) g_warning("Unable to load or run config.lua: %s", lua_tostring(lua_state, -1)); g_debug("Launching main loop"); gtk_main(); return 0; }