[zenity/gtk4-port: 3/25] entry, fileselection: make build against gtk4




commit f17a8bfc875fada1a79e42f6f07119e91a6955f4
Author: Logan Rathbone <poprocks gmail com>
Date:   Wed Feb 10 22:11:32 2021 -0500

    entry, fileselection: make build against gtk4

 src/entry.c         | 171 ++++++++++++++++++++++++++-------------------
 src/fileselection.c | 196 ++++++++++++++++++++++++----------------------------
 src/option.c        |  13 +---
 src/util.c          |  15 ++--
 src/util.h          |  55 ++++++++++++---
 src/zenity.h        |   1 -
 6 files changed, 243 insertions(+), 208 deletions(-)
---
diff --git a/src/entry.c b/src/entry.c
index bf3db713..40cd9095 100644
--- a/src/entry.c
+++ b/src/entry.c
@@ -1,19 +1,22 @@
+/* vim: colorcolumn=80 ts=4 sw=4
+ */
 /*
  * entry.c
  *
- * Copyright (C) 2002 Sun Microsystems, Inc.
+ * Copyright © 2002 Sun Microsystems, Inc.
+ * Copyright © 2021 Logan Rathbone
  *
  * This library is free software; you can redistribute it and/or
- * modify it under the terms of the GNU Library General Public
+ * modify it under the terms of the GNU Lesser General Public
  * License as published by the Free Software Foundation; either
  * version 2 of the License, or (at your option) any later version.
  *
  * This library is distributed in the hope that it will be useful,
  * but WITHOUT ANY WARRANTY; without even the implied warranty of
  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
- * Library General Public License for more details.
+ * Lesser General Public License for more details.
  *
- * You should have received a copy of the GNU Library General Public
+ * You should have received a copy of the GNU Lesser General Public
  * License along with this library; if not, write to the
  * Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
  * Boston, MA 02110-1301, USA.
@@ -21,34 +24,37 @@
  * Authors: Glynn Foster <glynn foster sun com>
  */
 
-#include "config.h"
-
 #include "util.h"
 #include "zenity.h"
 
-static void zenity_entry_dialog_response (
-       GtkWidget *widget, int response, gpointer data);
+#include <config.h>
+
+static void zenity_entry_dialog_response (GtkWidget *widget,
+               int response, gpointer data);
 
 static GtkWidget *entry;
 static gint n_entries = 0;
 
 static void
-zenity_entry_fill_entries (GSList **entries, const gchar **args) {
-       gint i = 0;
+zenity_entry_fill_entries (GSList **entries, const char **args)
+{
+       int i = 0;
 
        while (args[i] != NULL) {
-               *entries = g_slist_append (*entries, (gchar *) args[i]);
+               *entries = g_slist_append (*entries, (char *)args[i]);
                i++;
        }
 }
 
 static void
-zenity_entry_combo_activate_default (GtkEntry *entry, gpointer window) {
-       gtk_window_activate_default (GTK_WINDOW (window));
+zenity_entry_combo_activate_default (GtkEntry *entry, gpointer window)
+{
+       g_signal_emit_by_name (window, "activate-default");
 }
 
 void
-zenity_entry (ZenityData *data, ZenityEntryData *entry_data) {
+zenity_entry (ZenityData *data, ZenityEntryData *entry_data)
+{
        GtkBuilder *builder = NULL;
        GtkWidget *dialog;
        GtkWidget *button;
@@ -59,60 +65,61 @@ zenity_entry (ZenityData *data, ZenityEntryData *entry_data) {
 
        builder = zenity_util_load_ui_file ("zenity_entry_dialog", NULL);
 
-       if (builder == NULL) {
+       if (builder == NULL)
+       {
                data->exit_code = zenity_util_return_exit_code (ZENITY_ERROR);
                return;
        }
 
-       gtk_builder_connect_signals (builder, NULL);
+       dialog = GTK_WIDGET(gtk_builder_get_object (builder,
+                               "zenity_entry_dialog"));
 
-       dialog =
-               GTK_WIDGET (gtk_builder_get_object (builder, "zenity_entry_dialog"));
-
-       g_signal_connect (G_OBJECT (dialog),
-               "response",
-               G_CALLBACK (zenity_entry_dialog_response),
-               data);
+       g_signal_connect (dialog, "response",
+               G_CALLBACK(zenity_entry_dialog_response), data);
 
        if (data->dialog_title)
-               gtk_window_set_title (GTK_WINDOW (dialog), data->dialog_title);
+               gtk_window_set_title (GTK_WINDOW(dialog), data->dialog_title);
 
-       zenity_util_set_window_icon (
-               dialog, data->window_icon, ZENITY_IMAGE_FULLPATH ("zenity-entry.png"));
+       zenity_util_set_window_icon (dialog,
+                       data->window_icon, ZENITY_IMAGE_FULLPATH ("zenity-entry.png"));
 
        if (data->width > -1 || data->height > -1)
-               gtk_window_set_default_size (
-                       GTK_WINDOW (dialog), data->width, data->height);
+               gtk_window_set_default_size (GTK_WINDOW (dialog),
+                               data->width, data->height);
 
        if (data->modal)
                gtk_window_set_modal (GTK_WINDOW (dialog), TRUE);
 
-       if (data->extra_label) {
-               gint i = 0;
-               while (data->extra_label[i] != NULL) {
-                       gtk_dialog_add_button (
-                               GTK_DIALOG (dialog), data->extra_label[i], i);
+       if (data->extra_label)
+       {
+               int i = 0;
+
+               while (data->extra_label[i] != NULL)
+               {
+                       gtk_dialog_add_button (GTK_DIALOG (dialog),
+                                       data->extra_label[i], i);
                        i++;
                }
        }
 
-       if (data->ok_label) {
-               button = GTK_WIDGET (
-                       gtk_builder_get_object (builder, "zenity_entry_ok_button"));
-               gtk_button_set_label (GTK_BUTTON (button), data->ok_label);
+       if (data->ok_label)
+       {
+               button = GTK_WIDGET(gtk_builder_get_object (builder,
+                                       "zenity_entry_ok_button"));
+               gtk_button_set_label (GTK_BUTTON(button), data->ok_label);
        }
 
        if (data->cancel_label) {
-               button = GTK_WIDGET (
-                       gtk_builder_get_object (builder, "zenity_entry_cancel_button"));
-               gtk_button_set_label (GTK_BUTTON (button), data->cancel_label);
+               button = GTK_WIDGET(gtk_builder_get_object (builder,
+                                       "zenity_entry_cancel_button"));
+               gtk_button_set_label (GTK_BUTTON(button), data->cancel_label);
        }
 
        text = gtk_builder_get_object (builder, "zenity_entry_text");
 
        if (entry_data->dialog_text)
-               gtk_label_set_text_with_mnemonic (
-                       GTK_LABEL (text), g_strcompress (entry_data->dialog_text));
+               gtk_label_set_text_with_mnemonic (GTK_LABEL (text),
+                               g_strcompress (entry_data->dialog_text));
 
        vbox = gtk_builder_get_object (builder, "vbox4");
 
@@ -120,72 +127,92 @@ zenity_entry (ZenityData *data, ZenityEntryData *entry_data) {
 
        n_entries = g_slist_length (entries);
 
-       if (n_entries > 1) {
+       if (n_entries > 1)
+       {
+               GtkWidget *child;
+
                entry = gtk_combo_box_text_new_with_entry ();
+               child = gtk_combo_box_get_child (GTK_COMBO_BOX(entry));
 
-               for (tmp = entries; tmp; tmp = tmp->next) {
-                       gtk_combo_box_text_append_text (
-                               GTK_COMBO_BOX_TEXT (entry), tmp->data);
+               for (tmp = entries; tmp; tmp = tmp->next)
+               {
+                       gtk_combo_box_text_append_text (GTK_COMBO_BOX_TEXT(entry),
+                                       tmp->data);
                }
 
-               if (entry_data->entry_text) {
-                       gtk_combo_box_text_prepend_text (
-                               GTK_COMBO_BOX_TEXT (entry), entry_data->entry_text);
-                       gtk_combo_box_set_active (GTK_COMBO_BOX (entry), 0);
+               if (entry_data->entry_text)
+               {
+                       gtk_combo_box_text_prepend_text (GTK_COMBO_BOX_TEXT(entry),
+                                       entry_data->entry_text);
+                       gtk_combo_box_set_active (GTK_COMBO_BOX(entry), 0);
                }
 
-               g_signal_connect (gtk_bin_get_child (GTK_BIN (entry)),
-                       "activate",
+               g_signal_connect (child, "activate",
                        G_CALLBACK (zenity_entry_combo_activate_default),
                        GTK_WINDOW (dialog));
-       } else {
+       }
+       else
+       {
+               GtkEntryBuffer *buffer;
+
                entry = gtk_entry_new ();
+               buffer = gtk_entry_get_buffer (GTK_ENTRY(entry));
 
-               gtk_entry_set_activates_default (GTK_ENTRY (entry), TRUE);
+               gtk_entry_set_activates_default (GTK_ENTRY(entry), TRUE);
 
-               if (entry_data->entry_text)
-                       gtk_entry_set_text (GTK_ENTRY (entry), entry_data->entry_text);
+               if (entry_data->entry_text) {
+                       gtk_entry_buffer_set_text (buffer, entry_data->entry_text, -1);
+               }
 
-               if (entry_data->hide_text)
-                       g_object_set (G_OBJECT (entry), "visibility", FALSE, NULL);
+               if (entry_data->hide_text) {
+                       gtk_entry_set_visibility (GTK_ENTRY(entry), FALSE);
+               }
        }
 
-       gtk_widget_show (entry);
-
-       gtk_box_pack_end (GTK_BOX (vbox), entry, FALSE, FALSE, 0);
+       gtk_box_append (GTK_BOX(vbox), entry);
 
        gtk_label_set_mnemonic_widget (GTK_LABEL (text), entry);
 
        g_object_unref (builder);
 
-       zenity_util_show_dialog (dialog, data->attach);
+       zenity_util_show_dialog (dialog);
 
        if (data->timeout_delay > 0) {
                g_timeout_add_seconds (data->timeout_delay,
                        (GSourceFunc) zenity_util_timeout_handle,
                        dialog);
        }
-
-       gtk_main ();
+       zenity_util_gapp_main (GTK_WINDOW(dialog));
 }
 
 static void
-zenity_entry_dialog_output (void) {
-       const gchar *text;
+zenity_entry_dialog_output (void)
+{
+       const char *text;
+
        if (n_entries > 1)
-               text = gtk_combo_box_text_get_active_text (GTK_COMBO_BOX_TEXT (entry));
+       {
+               text = gtk_combo_box_text_get_active_text (GTK_COMBO_BOX_TEXT(entry));
+       }
        else
-               text = gtk_entry_get_text (GTK_ENTRY (entry));
+       {
+               GtkEntryBuffer *buffer;
+
+               buffer = gtk_entry_get_buffer (GTK_ENTRY(entry));
+               text = gtk_entry_buffer_get_text (buffer);
+       }
 
        if (text != NULL)
                g_print ("%s\n", text);
 }
 
 static void
-zenity_entry_dialog_response (GtkWidget *widget, int response, gpointer data) {
+zenity_entry_dialog_response (GtkWidget *widget, int response, gpointer data)
+{
        ZenityData *zen_data = data;
 
-       switch (response) {
+       switch (response)
+       {
                case GTK_RESPONSE_OK:
                        zenity_entry_dialog_output ();
                        zenity_util_exit_code_with_data (ZENITY_OK, zen_data);
@@ -202,10 +229,10 @@ zenity_entry_dialog_response (GtkWidget *widget, int response, gpointer data) {
 
                default:
                        if (zen_data->extra_label &&
-                               response < g_strv_length (zen_data->extra_label))
+                               response < (int)g_strv_length (zen_data->extra_label))
                                printf ("%s\n", zen_data->extra_label[response]);
                        zen_data->exit_code = zenity_util_return_exit_code (ZENITY_ESC);
                        break;
        }
-       gtk_main_quit ();
+       zenity_util_gapp_quit (GTK_WINDOW(widget));
 }
diff --git a/src/fileselection.c b/src/fileselection.c
index 465f08ae..716005bb 100644
--- a/src/fileselection.c
+++ b/src/fileselection.c
@@ -1,142 +1,123 @@
+/* vim: colorcolumn=80 ts=4 sw=4
+ */
 /*
  * fileselection.c
  *
- * Copyright (C) 2002 Sun Microsystems, Inc.
+ * Copyright © 2002 Sun Microsystems, Inc.
+ * Copyright © 2021 Logan Rathbone
  *
  * This library is free software; you can redistribute it and/or
- * modify it under the terms of the GNU Library General Public
+ * modify it under the terms of the GNU Lesser General Public
  * License as published by the Free Software Foundation; either
  * version 2 of the License, or (at your option) any later version.
  *
  * This library is distributed in the hope that it will be useful,
  * but WITHOUT ANY WARRANTY; without even the implied warranty of
  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
- * Library General Public License for more details.
+ * Lesser General Public License for more details.
  *
- * You should have received a copy of the GNU Library General Public
+ * You should have received a copy of the GNU Lesser General Public
  * License along with this library; if not, write to the
  * Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
  * Boston, MA 02110-1301, USA.
  *
- * Authors: Glynn Foster <glynn foster sun com>
+ * Original Author: Glynn Foster <glynn foster sun com>
  */
 
-#include "config.h"
-
 #include "util.h"
 #include "zenity.h"
+
 #include <string.h>
 
+#include <config.h>
+
 static ZenityData *zen_data;
 
-static void zenity_fileselection_dialog_response (
-       gpointer obj, int response, gpointer data);
+static void zenity_fileselection_dialog_response (GtkDialog *dialog,
+               int response, gpointer data);
 
 void
-zenity_fileselection (ZenityData *data, ZenityFileData *file_data) {
-       gchar *dir;
-       gchar *basename;
+zenity_fileselection (ZenityData *data, ZenityFileData *file_data)
+{
        GtkFileChooserAction action = GTK_FILE_CHOOSER_ACTION_OPEN;
-#if GTK_CHECK_VERSION(3, 20, 0)
        GtkFileChooserNative *dialog;
-#else
-       GtkWidget *dialog;
-#endif
 
        zen_data = data;
 
        if (file_data->directory) {
-               if (file_data->save)
-                       action = GTK_FILE_CHOOSER_ACTION_CREATE_FOLDER;
-               else
-                       action = GTK_FILE_CHOOSER_ACTION_SELECT_FOLDER;
-       } else {
-               if (file_data->save)
-                       action = GTK_FILE_CHOOSER_ACTION_SAVE;
+               action = GTK_FILE_CHOOSER_ACTION_SELECT_FOLDER;
+       }
+       else if (file_data->save) {
+               action = GTK_FILE_CHOOSER_ACTION_SAVE;
        }
 
-#if GTK_CHECK_VERSION(3, 20, 0)
        dialog = gtk_file_chooser_native_new (data->dialog_title,
-               NULL, /* TODO: Get parent from xid */
+               NULL,   /* parent */
                action,
-               _ ("_OK"),
-               _ ("_Cancel"));
+               _("_OK"),
+               _("_Cancel"));
 
        if (data->modal)
-               gtk_native_dialog_set_modal (GTK_NATIVE_DIALOG (dialog), TRUE);
+               gtk_native_dialog_set_modal (GTK_NATIVE_DIALOG(dialog), TRUE);
 
        if (data->extra_label)
                g_warning ("Cannot add extra labels to GtkFileChooserNative");
-#else
-       dialog = gtk_file_chooser_dialog_new (NULL,
-               NULL,
-               action,
-               _ ("_Cancel"),
-               GTK_RESPONSE_CANCEL,
-               _ ("_OK"),
-               GTK_RESPONSE_ACCEPT,
-               NULL);
 
-       if (data->dialog_title)
-               gtk_window_set_title (GTK_WINDOW (dialog), data->dialog_title);
+       g_signal_connect (dialog, "response",
+               G_CALLBACK(zenity_fileselection_dialog_response), file_data);
 
-       if (data->modal)
-               gtk_window_set_modal (GTK_WINDOW (dialog), TRUE);
+       if (file_data->uri)
+       {
+               if (g_path_is_absolute (file_data->uri) == TRUE)
+               {
+                       char *dir = g_path_get_dirname (file_data->uri);
+                       GFile *dir_gfile = g_file_new_for_path (dir);
 
-       zenity_util_set_window_icon (
-               dialog, data->window_icon, ZENITY_IMAGE_FULLPATH ("zenity-file.png"));
+                       gtk_file_chooser_set_current_folder (GTK_FILE_CHOOSER(dialog),
+                                       dir_gfile,
+                                       NULL);  /* GError */
 
-       if (data->extra_label) {
-               gint i = 0;
-               while (data->extra_label[i] != NULL) {
-                       gtk_dialog_add_button (
-                               GTK_DIALOG (dialog), data->extra_label[i], i);
-                       i++;
+                       g_free (dir);
+                       g_object_unref (dir_gfile);
                }
-       }
-#endif
 
-       gtk_file_chooser_set_do_overwrite_confirmation (
-               GTK_FILE_CHOOSER (dialog), file_data->confirm_overwrite);
+               if (file_data->uri[strlen (file_data->uri) - 1] != '/')
+               {
+                       if (file_data->save)
+                       {
+                               char *basename = g_path_get_basename (file_data->uri);
 
-       g_signal_connect (G_OBJECT (dialog),
-               "response",
-               G_CALLBACK (zenity_fileselection_dialog_response),
-               file_data);
+                               gtk_file_chooser_set_current_name (GTK_FILE_CHOOSER (dialog),
+                                               basename);
 
-       if (file_data->uri) {
-               dir = g_path_get_dirname (file_data->uri);
+                               g_free (basename);
+                       }
+                       else
+                       {
+                               GFile *file = g_file_new_for_uri (file_data->uri);
 
-               if (g_path_is_absolute (file_data->uri) == TRUE)
-                       gtk_file_chooser_set_current_folder (
-                               GTK_FILE_CHOOSER (dialog), dir);
+                               gtk_file_chooser_set_file (GTK_FILE_CHOOSER(dialog),
+                                               file,
+                                               NULL);  /* GError */
 
-               if (file_data->uri[strlen (file_data->uri) - 1] != '/') {
-                       basename = g_path_get_basename (file_data->uri);
-                       if (file_data->save)
-                               gtk_file_chooser_set_current_name (
-                                       GTK_FILE_CHOOSER (dialog), basename);
-                       else
-                               (void) gtk_file_chooser_set_filename (
-                                       GTK_FILE_CHOOSER (dialog), file_data->uri);
-                       g_free (basename);
+                               g_object_unref (file);
+                       }
                }
-               g_free (dir);
        }
 
        if (file_data->multi)
-               gtk_file_chooser_set_select_multiple (GTK_FILE_CHOOSER (dialog), TRUE);
+               gtk_file_chooser_set_select_multiple (GTK_FILE_CHOOSER(dialog), TRUE);
 
-       if (file_data->filter) {
+       if (file_data->filter)
+       {
                /* Filter format: Executables | *.exe *.bat *.com */
-               gint filter_i;
-
-               for (filter_i = 0; file_data->filter[filter_i]; filter_i++) {
+               for (int filter_i = 0; file_data->filter[filter_i]; filter_i++)
+               {
                        GtkFileFilter *filter = gtk_file_filter_new ();
-                       gchar *filter_str = file_data->filter[filter_i];
-                       gchar **pattern, **patterns;
-                       gchar *name = NULL;
-                       gint i;
+                       char *filter_str = file_data->filter[filter_i];
+                       char **pattern, **patterns;
+                       char *name = NULL;
+                       int i;
 
                        /* Set name */
                        for (i = 0; filter_str[i] != '\0'; i++)
@@ -170,49 +151,51 @@ zenity_fileselection (ZenityData *data, ZenityFileData *file_data) {
 
                        g_strfreev (patterns);
 
-                       gtk_file_chooser_add_filter (GTK_FILE_CHOOSER (dialog), filter);
+                       gtk_file_chooser_add_filter (GTK_FILE_CHOOSER(dialog), filter);
                }
        }
-
-#if GTK_CHECK_VERSION(3, 20, 0)
        gtk_native_dialog_show (GTK_NATIVE_DIALOG (dialog));
-#else
-       zenity_util_show_dialog (dialog, data->attach);
-#endif
 
        if (data->timeout_delay > 0) {
                g_timeout_add_seconds (data->timeout_delay,
                        (GSourceFunc) zenity_util_timeout_handle,
                        dialog);
        }
-
-       gtk_main ();
+       zenity_util_gapp_main (GTK_WINDOW(dialog));
 }
 
 static void
-zenity_fileselection_dialog_output (
-       GtkFileChooser *chooser, ZenityFileData *file_data) {
-       GSList *selections, *iter;
-       selections = gtk_file_chooser_get_filenames (chooser);
-       for (iter = selections; iter != NULL; iter = iter->next) {
-               g_print ("%s",
-                       g_filename_to_utf8 ((gchar *) iter->data, -1, NULL, NULL, NULL));
-               g_free (iter->data);
-               if (iter->next != NULL)
+zenity_fileselection_dialog_output (GtkFileChooser *chooser,
+               ZenityFileData *file_data)
+{
+       GListModel *model = gtk_file_chooser_get_files (chooser);
+       guint items = g_list_model_get_n_items (model);
+
+       for (guint i = 0; i < items; ++i)
+       {
+               GFile *file = g_list_model_get_item (model, i);
+
+               g_print ("%s", g_file_get_path (file));
+
+               if (i != items - 1)
                        g_print ("%s", file_data->separator);
+
+               g_object_unref (file);
        }
        g_print ("\n");
-       g_slist_free (selections);
+
+       g_object_unref (model);
 }
 
 static void
-zenity_fileselection_dialog_response (
-       gpointer obj, int response, gpointer data) {
+zenity_fileselection_dialog_response (GtkDialog *dialog,
+               int response, gpointer data)
+{
        ZenityFileData *file_data = data;
+       GtkFileChooser *chooser = GTK_FILE_CHOOSER (dialog);
 
-       GtkFileChooser *chooser = GTK_FILE_CHOOSER (obj);
-
-       switch (response) {
+       switch (response)
+       {
                case GTK_RESPONSE_ACCEPT:
                        zenity_fileselection_dialog_output (chooser, file_data);
                        zenity_util_exit_code_with_data (ZENITY_OK, zen_data);
@@ -229,10 +212,11 @@ zenity_fileselection_dialog_response (
 
                default:
                        if (zen_data->extra_label &&
-                               response < g_strv_length (zen_data->extra_label))
+                                       response < (int)g_strv_length (zen_data->extra_label)) {
                                printf ("%s\n", zen_data->extra_label[response]);
+                       }
                        zen_data->exit_code = zenity_util_return_exit_code (ZENITY_ESC);
                        break;
        }
-       gtk_main_quit ();
+       zenity_util_gapp_quit (GTK_WINDOW(dialog));
 }
diff --git a/src/option.c b/src/option.c
index 833bf0d4..fb65cd59 100644
--- a/src/option.c
+++ b/src/option.c
@@ -71,7 +71,6 @@ static gboolean zenity_info_active;
 static gboolean zenity_file_active;
 static gboolean zenity_file_directory;
 static gboolean zenity_file_save;
-static gboolean zenity_file_confirm_overwrite;
 static gchar **zenity_file_filter;
 
 /* List Dialog Options */
@@ -424,15 +423,7 @@ static GOptionEntry file_selection_options[] =
                        &zenity_general_separator,
                        N_ ("Set output separator character"),
                        N_ ("SEPARATOR")},
-               {"confirm-overwrite",
-                       '\0',
-                       0,
-                       G_OPTION_ARG_NONE,
-                       &zenity_file_confirm_overwrite,
-                       N_ ("Confirm file selection if filename already exists"),
-                       NULL},
-               {
-                       "file-filter",
+               {"file-filter",
                        '\0',
                        0,
                        G_OPTION_ARG_STRING_ARRAY,
@@ -1232,7 +1223,6 @@ zenity_file_pre_callback (GOptionContext *context, GOptionGroup *group,
        zenity_file_active = FALSE;
        zenity_file_directory = FALSE;
        zenity_file_save = FALSE;
-       zenity_file_confirm_overwrite = FALSE;
        zenity_file_filter = NULL;
 
        return TRUE;
@@ -1504,7 +1494,6 @@ zenity_file_post_callback (GOptionContext *context, GOptionGroup *group,
                results->file_data->multi = zenity_general_multiple;
                results->file_data->directory = zenity_file_directory;
                results->file_data->save = zenity_file_save;
-               results->file_data->confirm_overwrite = zenity_file_confirm_overwrite;
                results->file_data->separator = zenity_general_separator;
                results->file_data->filter = zenity_file_filter;
        } else {
diff --git a/src/util.c b/src/util.c
index 700b5101..b38a4f6e 100644
--- a/src/util.c
+++ b/src/util.c
@@ -3,22 +3,23 @@
 /*
  * util.c
  *
- * Copyright (C) 2002 Sun Microsystems, Inc.
- *           (C) 1999, 2000 Red Hat Inc.
- *           (C) 1998 James Henstridge
- *           (C) 1995-2002 Free Software Foundation
+ * Copyright © 2002 Sun Microsystems, Inc.
+ *           © 1999, 2000 Red Hat Inc.
+ *           © 1998 James Henstridge
+ *           © 1995-2002 Free Software Foundation
+ *           © 2021 Logan Rathbone
  *
  * This library is free software; you can redistribute it and/or
- * modify it under the terms of the GNU Library General Public
+ * modify it under the terms of the GNU Lesser General Public
  * License as published by the Free Software Foundation; either
  * version 2 of the License, or (at your option) any later version.
  *
  * This library is distributed in the hope that it will be useful,
  * but WITHOUT ANY WARRANTY; without even the implied warranty of
  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
- * Library General Public License for more details.
+ * Lesser General Public License for more details.
  *
- * You should have received a copy of the GNU Library General Public
+ * You should have received a copy of the GNU Lesser General Public
  * License along with this library; if not, write to the
  * Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
  * Boston, MA 02110-1301, USA.
diff --git a/src/util.h b/src/util.h
index d33e88c8..99ce0e81 100644
--- a/src/util.h
+++ b/src/util.h
@@ -1,3 +1,38 @@
+/* vim: colorcolumn=80 ts=4 sw=t
+ */
+/*
+ * util.h
+ *
+ * Copyright © 2002 Sun Microsystems, Inc.
+ *           © 1999, 2000 Red Hat Inc.
+ *           © 1998 James Henstridge
+ *           © 1995-2002 Free Software Foundation
+ *           © 2021 Logan Rathbone
+ *
+ * This library is free software; you can redistribute it and/or
+ * modify it under the terms of the GNU Lesser General Public
+ * License as published by the Free Software Foundation; either
+ * version 2 of the License, or (at your option) any later version.
+ *
+ * This library is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
+ * Lesser General Public License for more details.
+ *
+ * You should have received a copy of the GNU Lesser General Public
+ * License along with this library; if not, write to the
+ * Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+ * Boston, MA 02110-1301, USA.
+ *
+ * Original Authors of util.c (inferring they were the authors of
+ * this file as well):
+ *
+ *                     Glynn Foster <glynn foster sun com>
+ *          Havoc Pennington <hp redhat com>
+ *          James Henstridge <james daa com au>
+ *          Tom Tromey <tromey redhat com>
+ */
+
 #ifndef UTIL_H
 #define UTIL_H
 
@@ -11,18 +46,18 @@ G_BEGIN_DECLS
 
 #define ZENITY_IMAGE_FULLPATH(filename) (ZENITY_DATADIR "/" filename)
 
-GtkBuilder *zenity_util_load_ui_file (
-       const gchar *widget_root, ...) G_GNUC_NULL_TERMINATED;
+GtkBuilder *zenity_util_load_ui_file (const gchar *widget_root,
+               ...) G_GNUC_NULL_TERMINATED;
 gchar *zenity_util_strip_newline (gchar *string);
-gboolean zenity_util_fill_file_buffer (
-       GtkTextBuffer *buffer, const gchar *filename);
+gboolean zenity_util_fill_file_buffer (GtkTextBuffer *buffer,
+               const gchar *filename);
 const gchar *zenity_util_icon_name_from_filename (const gchar *filename);
-void zenity_util_set_window_icon (
-       GtkWidget *widget, const gchar *filename, const gchar *default_file);
-void zenity_util_set_window_icon_from_icon_name (
-       GtkWidget *widget, const gchar *filename, const gchar *default_icon_name);
-void zenity_util_set_window_icon_from_file (
-       GtkWidget *widget, const gchar *filename);
+void zenity_util_set_window_icon (GtkWidget *widget,
+               const gchar *filename, const gchar *default_file);
+void zenity_util_set_window_icon_from_icon_name (GtkWidget *widget,
+               const gchar *filename, const gchar *default_icon_name);
+void zenity_util_set_window_icon_from_file (GtkWidget *widget,
+               const gchar *filename);
 void zenity_util_show_help (GError **error);
 gint zenity_util_return_exit_code (ZenityExitCode value);
 void zenity_util_exit_code_with_data (ZenityExitCode value, ZenityData *data);
diff --git a/src/zenity.h b/src/zenity.h
index 3136baac..953f014e 100644
--- a/src/zenity.h
+++ b/src/zenity.h
@@ -86,7 +86,6 @@ typedef struct {
        gboolean multi;
        gboolean directory;
        gboolean save;
-       gboolean confirm_overwrite;
        gchar *separator;
        gchar **filter;
 } ZenityFileData;


[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]