Set the window title when opening a file on the command line
[pspp-builds.git] / src / ui / gui / psppire-syntax-window.c
index 534e6cfc71933bab9580b02f5466e4d7e96e5856..37bfd35cabe3b086ae6f43edc18763e7a4f0b1c0 100644 (file)
 #include <libpspp/message.h>
 #include <stdlib.h>
 
-
 #include "psppire-syntax-window.h"
 
-#include "data-editor.h"
+#include "psppire-data-window.h"
+#include "psppire-window-register.h"
 #include "about.h"
 #include "psppire-syntax-window.h"
 #include "syntax-editor-source.h"
 #define _(msgid) gettext (msgid)
 #define N_(msgid) msgid
 
-
-
 static void psppire_syntax_window_base_finalize (PsppireSyntaxWindowClass *, gpointer);
 static void psppire_syntax_window_base_init     (PsppireSyntaxWindowClass *class);
 static void psppire_syntax_window_class_init    (PsppireSyntaxWindowClass *class);
 static void psppire_syntax_window_init          (PsppireSyntaxWindow      *syntax_editor);
 
-
 GType
 psppire_syntax_window_get_type (void)
 {
@@ -73,20 +70,15 @@ psppire_syntax_window_get_type (void)
   return psppire_syntax_window_type;
 }
 
-
 static void
 psppire_syntax_window_finalize (GObject *object)
 {
-  g_debug ("%s %p", __FUNCTION__, object);
-
   GObjectClass *class = G_OBJECT_GET_CLASS (object);
 
   GObjectClass *parent_class = g_type_class_peek_parent (class);
 
-
   if (G_OBJECT_CLASS (parent_class)->finalize)
     (*G_OBJECT_CLASS (parent_class)->finalize) (object);
-
 }
 
 
@@ -114,10 +106,12 @@ psppire_syntax_window_base_finalize (PsppireSyntaxWindowClass *class,
 
 
 static void
-editor_execute_syntax (const PsppireSyntaxWindow *se, GtkTextIter start,
-               GtkTextIter stop)
+editor_execute_syntax (const PsppireSyntaxWindow *sw, GtkTextIter start,
+                      GtkTextIter stop)
 {
-  execute_syntax (create_syntax_editor_source (se->buffer, start, stop));
+  PsppireWindow *win = PSPPIRE_WINDOW (sw);
+  const gchar *name = psppire_window_get_filename (win);
+  execute_syntax (create_syntax_editor_source (sw->buffer, start, stop, name));
 }
 
 
@@ -478,6 +472,7 @@ open_syntax_window (GtkMenuItem *menuitem, gpointer parent)
 }
 
 
+
 extern struct source_stream *the_source_stream ;
 
 static void
@@ -524,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 (new_data_window),
+                   G_CALLBACK (create_data_window),
                    window);
+#endif
 
   g_signal_connect (get_widget_assert (xml,"help_about"),
                    "activate",
@@ -576,12 +572,11 @@ psppire_syntax_window_init (PsppireSyntaxWindow *window)
                    G_CALLBACK (on_run_to_end),
                    window);
 
-#if 0
   g_signal_connect (get_widget_assert (xml,"windows_minimise_all"),
                    "activate",
-                   G_CALLBACK (minimise_all_windows),
-                   NULL);
-#endif
+                   G_CALLBACK (psppire_window_minimise_all), NULL);
+
+  PSPPIRE_WINDOW (window)->menu = GTK_MENU_SHELL (get_widget_assert (xml,"windows_menu"));
 
   g_object_unref (xml);
 
@@ -593,7 +588,9 @@ psppire_syntax_window_init (PsppireSyntaxWindow *window)
 GtkWidget*
 psppire_syntax_window_new (void)
 {
-  return GTK_WIDGET (g_object_new (psppire_syntax_window_get_type (), NULL));
+  return GTK_WIDGET (g_object_new (psppire_syntax_window_get_type (),
+                                  "usage", PSPPIRE_WINDOW_USAGE_SYNTAX,
+                                  NULL));
 }