summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMasahiro Yamada <masahiroy@kernel.org>2025-06-25 00:05:24 +0900
committerMasahiro Yamada <masahiroy@kernel.org>2025-07-02 10:36:15 +0900
commit30dda0fdf7a6655bf180b61063087aed28812007 (patch)
tree3d5d68d9e617301443d772d26252ddc6753386bc
parent4d89059a722d9a562bfe6ee1e3941ccc3c6c70b6 (diff)
kconfig: gconf: use GtkFileChooser in on_load1_activate()
gtk_file_selection_new() is deprecated, and gtk_file_chooser_dialog_new() should be used instead. [1] [1]: https://gitlab.gnome.org/GNOME/gtk/-/blob/2.24.33/docs/reference/gtk/tmpl/gtkfilesel.sgml?ref_type=tags#L156 Signed-off-by: Masahiro Yamada <masahiroy@kernel.org> Acked-by: Randy Dunlap <rdunlap@infradead.org> Tested-by: Randy Dunlap <rdunlap@infradead.org>
-rw-r--r--scripts/kconfig/gconf.c54
1 files changed, 27 insertions, 27 deletions
diff --git a/scripts/kconfig/gconf.c b/scripts/kconfig/gconf.c
index 4e21cf46ff01..20a20a5888b9 100644
--- a/scripts/kconfig/gconf.c
+++ b/scripts/kconfig/gconf.c
@@ -158,38 +158,38 @@ static void set_view_mode(enum view_mode mode)
/* Menu & Toolbar Callbacks */
-
-static void
-load_filename(GtkFileSelection * file_selector, gpointer user_data)
+static void on_load1_activate(GtkMenuItem *menuitem, gpointer user_data)
{
- const gchar *fn;
+ GtkWidget *dialog;
+ GtkFileChooser *chooser;
+ gint res;
- fn = gtk_file_selection_get_filename(GTK_FILE_SELECTION
- (user_data));
+ dialog = gtk_file_chooser_dialog_new("Load file...",
+ GTK_WINDOW(user_data),
+ GTK_FILE_CHOOSER_ACTION_OPEN,
+ "_Cancel", GTK_RESPONSE_CANCEL,
+ "_Open", GTK_RESPONSE_ACCEPT,
+ NULL);
- if (conf_read(fn))
- text_insert_msg("Error", "Unable to load configuration !");
- else
- display_tree_part();
-}
+ chooser = GTK_FILE_CHOOSER(dialog);
+ gtk_file_chooser_set_filename(chooser, conf_get_configname());
-static void on_load1_activate(GtkMenuItem *menuitem, gpointer user_data)
-{
- GtkWidget *fs;
+ res = gtk_dialog_run(GTK_DIALOG(dialog));
+ if (res == GTK_RESPONSE_ACCEPT) {
+ char *filename;
- fs = gtk_file_selection_new("Load file...");
- g_signal_connect(GTK_OBJECT(GTK_FILE_SELECTION(fs)->ok_button),
- "clicked",
- G_CALLBACK(load_filename), (gpointer) fs);
- g_signal_connect_swapped(GTK_OBJECT
- (GTK_FILE_SELECTION(fs)->ok_button),
- "clicked", G_CALLBACK(gtk_widget_destroy),
- (gpointer) fs);
- g_signal_connect_swapped(GTK_OBJECT
- (GTK_FILE_SELECTION(fs)->cancel_button),
- "clicked", G_CALLBACK(gtk_widget_destroy),
- (gpointer) fs);
- gtk_widget_show(fs);
+ filename = gtk_file_chooser_get_filename(chooser);
+
+ if (conf_read(filename))
+ text_insert_msg("Error",
+ "Unable to load configuration!");
+ else
+ display_tree_part();
+
+ g_free(filename);
+ }
+
+ gtk_widget_destroy(GTK_WIDGET(dialog));
}
static void on_save_activate(GtkMenuItem *menuitem, gpointer user_data)