From a364cdd1d65a11f7672c22ae9d2d7ef553327d7c Mon Sep 17 00:00:00 2001 From: "Richard W.M. Jones" Date: Fri, 3 Jun 2016 10:29:46 +0100 Subject: [PATCH] p2v: Add "XTerm" button which launches a terminal window. (cherry picked from commit bf434bdb3523b7629d50144f35a6bccc05bf94e6) --- p2v/gui.c | 23 +++++++++++++++++++---- 1 file changed, 19 insertions(+), 4 deletions(-) diff --git a/p2v/gui.c b/p2v/gui.c index 015fa21..b8d61b5 100644 --- a/p2v/gui.c +++ b/p2v/gui.c @@ -95,6 +95,7 @@ gui_conversion (struct config *config) static void test_connection_clicked (GtkWidget *w, gpointer data); static void *test_connection_thread (void *data); static void configure_network_button_clicked (GtkWidget *w, gpointer data); +static void xterm_button_clicked (GtkWidget *w, gpointer data); static void about_button_clicked (GtkWidget *w, gpointer data); static void connection_next_clicked (GtkWidget *w, gpointer data); static void repopulate_output_combo (struct config *config); @@ -112,6 +113,7 @@ create_connection_dialog (struct config *config) GtkWidget *test_hbox, *test; GtkWidget *about; GtkWidget *configure_network; + GtkWidget *xterm; char port_str[64]; conn_dlg = gtk_dialog_new (); @@ -220,16 +222,18 @@ create_connection_dialog (struct config *config) /* Buttons. */ gtk_dialog_add_buttons (GTK_DIALOG (conn_dlg), _("Configure network ..."), 1, - _("About virt-p2v " PACKAGE_VERSION " ..."), 2, - _("Next"), 3, + _("XTerm ..."), 2, + _("About virt-p2v " PACKAGE_VERSION " ..."), 3, + _("Next"), 4, NULL); - next_button = gtk_dialog_get_widget_for_response (GTK_DIALOG (conn_dlg), 3); + next_button = gtk_dialog_get_widget_for_response (GTK_DIALOG (conn_dlg), 4); gtk_widget_set_sensitive (next_button, FALSE); configure_network = gtk_dialog_get_widget_for_response (GTK_DIALOG (conn_dlg), 1); - about = gtk_dialog_get_widget_for_response (GTK_DIALOG (conn_dlg), 2); + xterm = gtk_dialog_get_widget_for_response (GTK_DIALOG (conn_dlg), 2); + about = gtk_dialog_get_widget_for_response (GTK_DIALOG (conn_dlg), 3); /* Signals. */ g_signal_connect_swapped (G_OBJECT (conn_dlg), "destroy", @@ -238,6 +242,8 @@ create_connection_dialog (struct config *config) G_CALLBACK (test_connection_clicked), config); g_signal_connect (G_OBJECT (configure_network), "clicked", G_CALLBACK (configure_network_button_clicked), NULL); + g_signal_connect (G_OBJECT (xterm), "clicked", + G_CALLBACK (xterm_button_clicked), NULL); g_signal_connect (G_OBJECT (about), "clicked", G_CALLBACK (about_button_clicked), NULL); g_signal_connect (G_OBJECT (next_button), "clicked", @@ -387,6 +393,15 @@ configure_network_button_clicked (GtkWidget *w, gpointer data) ignore_value (system ("nm-connection-editor &")); } +/** + * Callback from the C button. + */ +static void +xterm_button_clicked (GtkWidget *w, gpointer data) +{ + ignore_value (system ("xterm &")); +} + static void about_button_clicked (GtkWidget *w, gpointer data) { -- 1.8.3.1