X-Git-Url: https://git.gag.com/?p=fw%2Faltos;a=blobdiff_plain;f=aoview%2Faoview_main.c;h=36a82e0e1212dc3da35006dc8e42708266495c51;hp=7906e8ac92231916ae44e53ea9e4f0ac5ddf3ec5;hb=e506ed4b6efb86eab50204658fcd433b987e3831;hpb=09771c644de54ae354e8f98af7ba74289b3c0fcc diff --git a/aoview/aoview_main.c b/aoview/aoview_main.c index 7906e8ac..36a82e0e 100644 --- a/aoview/aoview_main.c +++ b/aoview/aoview_main.c @@ -17,6 +17,10 @@ #include "aoview.h" +static const char aoview_glade[] = { +#include "aoview_glade.h" +}; + static void usage(void) { printf("aoview [--device|-d device_file]"); exit(1); @@ -27,20 +31,24 @@ static void destroy_event(GtkWidget *widget, gpointer data) gtk_main_quit(); } +extern int _Xdebug; + int main(int argc, char **argv) { GladeXML *xml = NULL; GtkWidget *mainwindow; char *device = NULL; + GtkAboutDialog *about_dialog; static struct option long_options[] = { { "device", 1, 0, 'd'}, + { "sync", 0, 0, 's'}, { 0, 0, 0, 0 } }; for (;;) { int c, temp; - c = getopt_long_only(argc, argv, "d:", long_options, &temp); + c = getopt_long_only(argc, argv, "sd:", long_options, &temp); if (c == -1) break; @@ -48,27 +56,54 @@ int main(int argc, char **argv) case 'd': device = optarg; break; + case 's': + _Xdebug = 1; + break; default: usage(); } } + g_thread_init(NULL); gtk_init(&argc, &argv); glade_init(); - xml = glade_xml_new("aoview.glade", NULL, NULL); + xml = glade_xml_new_from_buffer(aoview_glade, sizeof (aoview_glade), NULL, NULL); + /* connect the signals in the interface */ glade_xml_signal_autoconnect(xml); /* Hook up the close button. */ mainwindow = glade_xml_get_widget(xml, "aoview"); + assert(mainwindow); + g_signal_connect (G_OBJECT(mainwindow), "destroy", G_CALLBACK(destroy_event), NULL); + about_dialog = GTK_ABOUT_DIALOG(glade_xml_get_widget(xml, "about_dialog")); + assert(about_dialog); + gtk_about_dialog_set_version(about_dialog, AOVIEW_VERSION); + + aoview_voice_init(xml); + aoview_dev_dialog_init(xml); aoview_state_init(xml); + aoview_file_init(xml); + + aoview_log_init(xml); + + aoview_table_init(xml); + + aoview_eeprom_init(xml); + + aoview_replay_init(xml); + + aoview_label_init(xml); + + aoview_voice_speak("rocket flight monitor ready\n"); + gtk_main(); return 0;