X-Git-Url: https://pintos-os.org/cgi-bin/gitweb.cgi?a=blobdiff_plain;f=src%2Fui%2Fgui%2Fpsppire-syntax-window.c;h=2402b341c117d0c831c47755aef8f97a0c6ebb47;hb=refs%2Fbuilds%2F20140106033045%2Fpspp;hp=cd4b62da32ed04ea0aac369f44864e0424e8bef4;hpb=cf40a7c5308d086195265623f35b310c0b35f766;p=pspp diff --git a/src/ui/gui/psppire-syntax-window.c b/src/ui/gui/psppire-syntax-window.c index cd4b62da32..2402b341c1 100644 --- a/src/ui/gui/psppire-syntax-window.c +++ b/src/ui/gui/psppire-syntax-window.c @@ -1,5 +1,5 @@ /* PSPPIRE - a graphical user interface for PSPP. - Copyright (C) 2008, 2009, 2010, 2011 Free Software Foundation + Copyright (C) 2008, 2009, 2010, 2011, 2012 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 @@ -31,8 +31,10 @@ #include "ui/gui/executor.h" #include "ui/gui/help-menu.h" #include "ui/gui/helper.h" +#include "ui/gui/builder-wrapper.h" #include "ui/gui/psppire-data-window.h" #include "ui/gui/psppire-encoding-selector.h" +#include "ui/gui/psppire-lex-reader.h" #include "ui/gui/psppire-syntax-window.h" #include "ui/gui/psppire-window-register.h" #include "ui/gui/psppire.h" @@ -248,10 +250,7 @@ editor_execute_syntax (const PsppireSyntaxWindow *sw, GtkTextIter start, GtkTextIter stop) { PsppireWindow *win = PSPPIRE_WINDOW (sw); - struct lex_reader *reader; - gchar *text = gtk_text_buffer_get_text (GTK_TEXT_BUFFER (sw->buffer), &start, &stop, FALSE); - reader = lex_reader_for_string (text); - g_free (text); + struct lex_reader *reader = lex_reader_for_gtk_text_buffer (GTK_TEXT_BUFFER (sw->buffer), start, stop); lex_reader_set_file_name (reader, psppire_window_get_filename (win)); @@ -297,7 +296,7 @@ clipboard_get_cb (GtkClipboard *clipboard, PsppireSyntaxWindow *sw = data; g_assert (info == SELECT_FMT_TEXT); - gtk_selection_data_set (selection_data, selection_data->target, + gtk_selection_data_set (selection_data, gtk_selection_data_get_target (selection_data), 8, (const guchar *) sw->cliptext, strlen (sw->cliptext)); @@ -377,20 +376,17 @@ contents_received_callback (GtkClipboard *clipboard, GtkSelectionData *sd, gpointer data) { - gchar *c; PsppireSyntaxWindow *syntax_window = data; - if ( sd->length < 0 ) + if ( gtk_selection_data_get_length (sd) < 0 ) return; - if ( sd->type != gdk_atom_intern ("UTF8_STRING", FALSE)) + if ( gtk_selection_data_get_data_type (sd) != gdk_atom_intern ("UTF8_STRING", FALSE)) return; - c = (gchar *) sd->data; - gtk_text_buffer_insert_at_cursor (GTK_TEXT_BUFFER (syntax_window->buffer), - (gchar *) sd->data, - sd->length); + (gchar *) gtk_selection_data_get_data (sd), + gtk_selection_data_get_length (sd)); } @@ -673,7 +669,7 @@ load_and_show_syntax_window (GtkWidget *se, const gchar *filename) gboolean ok; gtk_source_buffer_begin_not_undoable_action (PSPPIRE_SYNTAX_WINDOW (se)->buffer); - ok = psppire_window_load (PSPPIRE_WINDOW (se), filename); + ok = psppire_window_load (PSPPIRE_WINDOW (se), filename, NULL); gtk_source_buffer_end_not_undoable_action (PSPPIRE_SYNTAX_WINDOW (se)->buffer); if (ok ) @@ -896,11 +892,11 @@ psppire_syntax_window_init (PsppireSyntaxWindow *window) { GtkUIManager *uim = GTK_UI_MANAGER (get_object_assert (xml, "uimanager1", GTK_TYPE_UI_MANAGER)); + GtkWidget *w = gtk_ui_manager_get_widget (uim,"/ui/menubar/windows/windows_minimise_all"); merge_help_menu (uim); - PSPPIRE_WINDOW (window)->menu = - GTK_MENU_SHELL (gtk_ui_manager_get_widget (uim,"/ui/menubar/windows/windows_minimise_all")->parent); + PSPPIRE_WINDOW (window)->menu = GTK_MENU_SHELL (gtk_widget_get_parent (w)); } g_object_unref (xml); @@ -948,7 +944,7 @@ error_dialog (GtkWindow *w, const gchar *filename, GError *err) Loads the buffer from the file called FILENAME */ gboolean -syntax_load (PsppireWindow *window, const gchar *filename) +syntax_load (PsppireWindow *window, const gchar *filename, gpointer not_used) { GError *err = NULL; gchar *text_locale = NULL;