static void mu_guile_uninit_instance (void) { g_return_if_fail (_singleton); mu_query_destroy (_singleton->query); g_free (_singleton); _singleton = NULL; mu_runtime_uninit (); }
int main (int argc, char *argv[]) { MugData mugdata; GtkWidget *mugshell; GOptionContext *octx; GOptionEntry entries[] = { {"muhome", 0, 0, G_OPTION_ARG_FILENAME, &mugdata.muhome, "specify an alternative mu directory", NULL}, {NULL, 0, 0, G_OPTION_ARG_NONE, NULL, NULL, NULL} /* sentinel */ }; gtk_init (&argc, &argv); octx = g_option_context_new ("- mug options"); g_option_context_add_main_entries (octx, entries, "Mug"); memset (&mugdata, 0, sizeof (MugData)); if (!g_option_context_parse (octx, &argc, &argv, NULL)) { g_option_context_free (octx); g_printerr ("mug: error in options\n"); return 1; } g_option_context_free (octx); mu_runtime_init (mugdata.muhome, "mug"); mugshell = mug_shell (&mugdata); g_signal_connect (G_OBJECT (mugshell), "destroy", G_CALLBACK (gtk_main_quit), NULL); g_signal_connect (G_OBJECT (mugshell), "key_release_event", G_CALLBACK ( on_focus_query_bar ), (gpointer)&mugdata ); gtk_widget_show (mugshell); mug_query_bar_grab_focus (MUG_QUERY_BAR (mugdata.querybar)); gtk_main (); g_free (mugdata.muhome); mu_runtime_uninit (); return 0; }