X-Git-Url: https://pintos-os.org/cgi-bin/gitweb.cgi?a=blobdiff_plain;f=src%2Fui%2Fgui%2Fmain.c;h=1e59f8431fc5fa8783ca3c910180001b69e08a08;hb=0943ce431a8b804b20bb93516dc7455c60c6e3cf;hp=54f90567f69d4d4c87f582e064e46dca96b6c652;hpb=72d3f344d81b147b018cc268028f31397613621e;p=pspp diff --git a/src/ui/gui/main.c b/src/ui/gui/main.c index 54f90567f6..1e59f8431f 100644 --- a/src/ui/gui/main.c +++ b/src/ui/gui/main.c @@ -1,5 +1,5 @@ /* PSPPIRE - a graphical user interface for PSPP. - Copyright (C) 2004, 2005, 2006, 2010, 2011, 2012 Free Software Foundation + Copyright (C) 2004, 2005, 2006, 2010, 2011, 2012, 2013, 2014 Free Software Foundation This program is free software: you can redistribute it and/or modify it under the terms of the GNU General Public License as published by @@ -88,7 +88,7 @@ usage (void) gtk_help = gtk_help != NULL ? gtk_help + 2 : gtk_help_base; printf (_("\ -PSPPIRE, a GUI for PSPP, a program for statistical analysis of sample data.\n\ +PSPPIRE, a GUI for PSPP, a program for statistical analysis of sampled data.\n\ Usage: %s [OPTION]... FILE\n\ \n\ Arguments to long options also apply to equivalent short options.\n\ @@ -113,8 +113,8 @@ Informative output:\n\ -h, --help display this help and exit\n\ -V, --version output version information and exit\n\ \n\ -A non-option argument is interpreted as a .sav file, a .por file or a syntax\n\ -file to load.\n"), +A non-option argument is interpreted as a data file in .sav or .zsav or .por\n\ +format or a syntax file to load.\n"), program_name, gtk_help, inc_path); free (inc_path); @@ -199,12 +199,14 @@ print_startup_time (gpointer data) return FALSE; } +/* static gboolean quit_one_loop (gpointer data) { gtk_main_quit (); return FALSE; } +*/ struct initialisation_parameters { @@ -249,25 +251,32 @@ static GMemVTable vtable = }; #ifdef __APPLE__ +static const bool apple = true; +#else +static const bool apple = false; +#endif + /* Searches ARGV for the -psn_xxxx option that the desktop application launcher passes in, and removes it if it finds it. Returns the new value of ARGC. */ -static int +static inline int remove_psn (int argc, char **argv) { - int i; - - for (i = 0; i < argc; i++) + if (apple) { - if (!strncmp(argv[i], "-psn", 4)) - { - remove_element (argv, argc + 1, sizeof *argv, i); - return argc - 1; - } + int i; + + for (i = 0; i < argc; i++) + { + if (!strncmp (argv[i], "-psn", 4)) + { + remove_element (argv, argc + 1, sizeof *argv, i); + return argc - 1; + } + } } return argc; } -#endif /* __APPLE__ */ int main (int argc, char *argv[]) @@ -280,7 +289,12 @@ main (int argc, char *argv[]) set_program_name (argv[0]); g_mem_set_vtable (&vtable); + +#if !GLIB_CHECK_VERSION(2,32,0) + /* g_thread_init() was required before glib 2.32, but it is deprecated since + then and calling it yields a compile-time warning. */ g_thread_init (NULL); +#endif gtk_disable_setlocale (); @@ -300,9 +314,7 @@ main (int argc, char *argv[]) g_warning ("%s", vers); } -#ifdef __APPLE__ argc = remove_psn (argc, argv); -#endif /* Parse our own options. This must come BEFORE gdk_init otherwise options such as @@ -324,13 +336,14 @@ main (int argc, char *argv[]) init_p.splash_window = create_splash_window (); init_p.data_file = optind < argc ? argv[optind] : NULL; - if ( show_splash ) - gtk_widget_show (init_p.splash_window); + // if ( show_splash ) + // gtk_widget_show (init_p.splash_window); - g_idle_add (quit_one_loop, 0); + // g_idle_add (quit_one_loop, 0); - gtk_quit_add (0, run_inner_loop, &init_p); - gtk_main (); + // gtk_quit_add (0, run_inner_loop, &init_p); + run_inner_loop (&init_p); + // gtk_main (); return 0; }