mirror of
https://git.tartarus.org/simon/putty.git
synced 2025-03-16 03:53:01 -05:00
Use GtkMessageDialog for dlg_error().
This is a much simpler way to display simple message-box type dialogs, whose absence I've previously been working around by laboriously constructing something in my usual style.
This commit is contained in:
parent
ad8995b0d6
commit
55de891e54
@ -1036,10 +1036,12 @@ void dlg_beep(void *dlg)
|
|||||||
gdk_beep();
|
gdk_beep();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
#if !GTK_CHECK_VERSION(3,0,0)
|
||||||
static void errmsg_button_clicked(GtkButton *button, gpointer data)
|
static void errmsg_button_clicked(GtkButton *button, gpointer data)
|
||||||
{
|
{
|
||||||
gtk_widget_destroy(GTK_WIDGET(data));
|
gtk_widget_destroy(GTK_WIDGET(data));
|
||||||
}
|
}
|
||||||
|
#endif
|
||||||
|
|
||||||
static void set_transient_window_pos(GtkWidget *parent, GtkWidget *child)
|
static void set_transient_window_pos(GtkWidget *parent, GtkWidget *child)
|
||||||
{
|
{
|
||||||
@ -1084,7 +1086,19 @@ void align_label_left(GtkLabel *label)
|
|||||||
void dlg_error_msg(void *dlg, const char *msg)
|
void dlg_error_msg(void *dlg, const char *msg)
|
||||||
{
|
{
|
||||||
struct dlgparam *dp = (struct dlgparam *)dlg;
|
struct dlgparam *dp = (struct dlgparam *)dlg;
|
||||||
GtkWidget *window, *hbox, *text, *ok;
|
GtkWidget *window;
|
||||||
|
|
||||||
|
#if GTK_CHECK_VERSION(3,0,0)
|
||||||
|
window = gtk_message_dialog_new(GTK_WINDOW(dp->window),
|
||||||
|
(GTK_DIALOG_MODAL |
|
||||||
|
GTK_DIALOG_DESTROY_WITH_PARENT),
|
||||||
|
GTK_MESSAGE_ERROR,
|
||||||
|
GTK_BUTTONS_CLOSE,
|
||||||
|
"%s", msg);
|
||||||
|
gtk_dialog_run(GTK_DIALOG(window));
|
||||||
|
gtk_widget_destroy(window);
|
||||||
|
#else
|
||||||
|
GtkWidget *hbox, *text, *ok;
|
||||||
|
|
||||||
window = gtk_dialog_new();
|
window = gtk_dialog_new();
|
||||||
text = gtk_label_new(msg);
|
text = gtk_label_new(msg);
|
||||||
@ -1112,6 +1126,8 @@ void dlg_error_msg(void *dlg, const char *msg)
|
|||||||
set_transient_window_pos(dp->window, window);
|
set_transient_window_pos(dp->window, window);
|
||||||
gtk_widget_show(window);
|
gtk_widget_show(window);
|
||||||
gtk_main();
|
gtk_main();
|
||||||
|
#endif
|
||||||
|
|
||||||
post_main();
|
post_main();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
Loading…
x
Reference in New Issue
Block a user