X-Git-Url: https://pintos-os.org/cgi-bin/gitweb.cgi?a=blobdiff_plain;f=src%2Fui%2Fgui%2Ftext-data-import-dialog.c;h=fa55bba5e95d64e561682245050b6e3cd56ddf1f;hb=4c4f035bfad520dc54f0d5a9e30e36d4fb009efc;hp=57263f2dac558dc77661b06d5f61be0f5d22eda6;hpb=9b38fd08ac4e7b3f65d2e60176f40f0d4bfb5915;p=pspp diff --git a/src/ui/gui/text-data-import-dialog.c b/src/ui/gui/text-data-import-dialog.c index 57263f2dac..fa55bba5e9 100644 --- a/src/ui/gui/text-data-import-dialog.c +++ b/src/ui/gui/text-data-import-dialog.c @@ -16,12 +16,16 @@ #include +#include + + + #include "checkbox-treeview.h" #include "descriptives-dialog.h" #include -#include -#include + +#include #include #include #include @@ -35,13 +39,13 @@ #include #include #include -#include +#include #include #include #include #include #include -#include +#include #include "error.h" #include "xalloc.h" @@ -50,6 +54,30 @@ #define _(msgid) gettext (msgid) #define N_(msgid) msgid + +#if !GTK_CHECK_VERSION (2, 10, 0) + +void +text_data_import_assistant (GObject *o, gpointer de_) +{ + struct data_editor *de = de_; + + GtkWidget *dialog = + gtk_message_dialog_new (GTK_WINDOW (de), + GTK_DIALOG_MODAL, + GTK_MESSAGE_WARNING, + GTK_BUTTONS_CLOSE, + _("The text import assistant has not been " + "compiled into this build of PSPPIRE, because " + "GTK+ version 2.10.0 or later was not available.")); + + gtk_dialog_run (GTK_DIALOG (dialog)); + + gtk_widget_destroy (dialog); +} + +#else + /* TextImportModel, a GtkTreeModel used by the text data import dialog. */ enum @@ -231,7 +259,7 @@ void text_data_import_assistant (GObject *o, gpointer de_) { struct data_editor *de = de_; - GtkWindow *parent_window = de->parent.window; + GtkWindow *parent_window = GTK_WINDOW (de); struct import_assistant *ia; ia = xzalloc (sizeof *ia); @@ -265,9 +293,7 @@ text_data_import_assistant (GObject *o, gpointer de_) case PSPPIRE_RESPONSE_PASTE: { char *syntax = generate_syntax (ia); - struct syntax_editor *se = - (struct syntax_editor *) window_create (WINDOW_SYNTAX, NULL); - gtk_text_buffer_insert_at_cursor (se->buffer, syntax, -1); + paste_syntax_in_new_window (syntax); free (syntax); } break; @@ -633,6 +659,7 @@ add_page_to_assistant (struct import_assistant *ia, gtk_assistant_append_page (ia->asst.assistant, content); gtk_assistant_set_page_type (ia->asst.assistant, content, type); gtk_assistant_set_page_title (ia->asst.assistant, content, title_copy); + gtk_assistant_set_page_complete (ia->asst.assistant, content, true); free (title_copy); @@ -656,11 +683,6 @@ on_prepare (GtkAssistant *assistant, GtkWidget *page, gtk_widget_show (ia->asst.paste_button); else gtk_widget_hide (ia->asst.paste_button); - - /* Make the user visit each page in the assistant once. Seems - like a reasonable user interface, plus visiting the final - page is what constructs the dictionary. */ - gtk_assistant_set_page_complete (assistant, page, true); } /* Called when the Cancel button in the assistant is clicked. */ @@ -1599,12 +1621,10 @@ prepare_formats_page (struct import_assistant *ia) hold a reference via ia->formats.dict. */ var_store = psppire_var_store_new (psppire_dict); g_object_set (var_store, - "trailing-rows", 1, "format-type", PSPPIRE_VAR_STORE_INPUT_FORMATS, (void *) NULL); var_sheet = PSPPIRE_VAR_SHEET (psppire_var_sheet_new ()); g_object_set (var_sheet, - "row-geometry", var_store, "model", var_store, "may-create-vars", FALSE, (void *) NULL); @@ -2268,10 +2288,11 @@ push_watch_cursor (struct import_assistant *ia) if (++ia->asst.watch_cursor == 1) { GtkWidget *widget = GTK_WIDGET (ia->asst.assistant); - GdkCursor *cursor = gdk_cursor_new (GDK_WATCH); + GdkDisplay *display = gtk_widget_get_display (widget); + GdkCursor *cursor = gdk_cursor_new_for_display (display, GDK_WATCH); gdk_window_set_cursor (widget->window, cursor); gdk_cursor_unref (cursor); - gdk_display_flush (gtk_widget_get_display (widget)); + gdk_display_flush (display); } } @@ -2282,7 +2303,9 @@ pop_watch_cursor (struct import_assistant *ia) { if (--ia->asst.watch_cursor == 0) { - GtkWidget *widget = GTK_WIDGET (ia->asst.assistant);; + GtkWidget *widget = GTK_WIDGET (ia->asst.assistant); gdk_window_set_cursor (widget->window, NULL); } } + +#endif