Set the window title when opening a file on the command line
authorJohn Darrington <john@darrington.wattle.id.au>
Thu, 1 Jan 2009 11:05:26 +0000 (20:05 +0900)
committerJohn Darrington <john@darrington.wattle.id.au>
Thu, 1 Jan 2009 11:05:26 +0000 (20:05 +0900)
src/ui/gui/psppire-data-window.c
src/ui/gui/psppire-data-window.h
src/ui/gui/psppire-syntax-window.c
src/ui/gui/psppire-window.c
src/ui/gui/psppire.c

index 21226ea56edcbdba88a7032c218bfbb1079405b6..16e8a8a016bfaa674e9b59bd19f0b3f4cb683b1a 100644 (file)
@@ -1005,14 +1005,6 @@ on_switch_sheet (GtkNotebook *notebook,
 
 
 
-void
-create_data_window (void)
-{
-  GtkWidget *w = psppire_data_window_new ();
-  gtk_widget_show (w);
-}
-
-
 static void
 psppire_data_window_init (PsppireDataWindow *de)
 {
index 13d59a0c2cb31c68c20ebc65b443acf3fda79802..77687dc9c53a2098c68f300243a93fbb4fa1bc54 100644 (file)
@@ -114,8 +114,6 @@ struct _PsppireDataWindowClass
 GType      psppire_data_window_get_type        (void);
 GtkWidget* psppire_data_window_new             (void);
 
-void create_data_window (void);
-
 
 G_END_DECLS
 
index 073537bd5f7b824c9175866f097337ec01906738..37bfd35cabe3b086ae6f43edc18763e7a4f0b1c0 100644 (file)
@@ -519,11 +519,12 @@ psppire_syntax_window_init (PsppireSyntaxWindow *window)
                    G_CALLBACK (open_syntax_window),
                    window);
 
-
+#if 0
   g_signal_connect (get_widget_assert (xml,"file_new_data"),
                    "activate",
                    G_CALLBACK (create_data_window),
                    window);
+#endif
 
   g_signal_connect (get_widget_assert (xml,"help_about"),
                    "activate",
index c1333769802671d1fcd612cb3194ece3a38bffff..78eda412c5746ad568f85cd04da89329d9367305 100644 (file)
@@ -325,14 +325,12 @@ remove_menuitem (PsppireWindowRegister *reg, const gchar *key, gpointer data)
   PsppireWindow *window = PSPPIRE_WINDOW (data);
   GtkWidget *item ;
 
-  if ( !GTK_WIDGET_REALIZED (window))
-    return;
-
   item = g_hash_table_lookup (window->menuitem_table, key);
 
   g_hash_table_remove (window->menuitem_table, key);
 
-  gtk_container_remove (GTK_CONTAINER (window->menu), item);
+  if (GTK_IS_CONTAINER (window->menu))
+    gtk_container_remove (GTK_CONTAINER (window->menu), item);
 }
 
 static void
index e50ce2f0a3432187cbe4d4880c132f2c1fb4f2c9..62117a01bc0bbfc779476da08d3117a0913d59ad 100644 (file)
@@ -69,6 +69,7 @@ static void create_icon_factory (void);
 struct source_stream *the_source_stream ;
 struct dataset * the_dataset = NULL;
 
+static GtkWidget *the_data_window;
 
 static void
 replace_casereader (struct casereader *s)
@@ -118,8 +119,6 @@ initialize (struct command_line_processor *clp, int argc, char **argv)
   the_data_store = psppire_data_store_new (dictionary);
   replace_casereader (NULL);
 
-
-
   create_icon_factory ();
 
   outp_configure_driver_line (
@@ -136,14 +135,16 @@ initialize (struct command_line_processor *clp, int argc, char **argv)
   /* Ignore alarm clock signals */
   signal (SIGALRM, SIG_IGN);
 
+  the_data_window = psppire_data_window_new ();
+
   command_line_processor_replace_aux (clp, &post_init_argp, the_source_stream);
   command_line_processor_replace_aux (clp, &non_option_argp, the_source_stream);
 
   command_line_processor_parse (clp, argc, argv);
 
-  create_data_window ();
-
   execute_syntax (create_syntax_string_source (""));
+
+  gtk_widget_show (the_data_window);
 }
 
 
@@ -281,6 +282,9 @@ parse_non_options (int key, char *arg, struct argp_state *state)
                            ERRMODE_CONTINUE);
 
        ds_destroy (&syntax);
+
+       psppire_window_set_filename (the_data_window, arg);
+
        break;
       }
     default: