About
Contact
QtCreator
KDevelop
Solarized
1
#include
<gtk/gtk.h>
2
3
int
4
main
(
int
argc
,
char
**
argv
)
5
{
6
const
char
*
display_name
;
7
GdkDisplay
*
display
;
8
GtkWidget
*
win
, *
but
;
9
gboolean
has_display
;
10
11
g_log_set_always_fatal
(
fatal_mask:
G_LOG_LEVEL_WARNING
|
G_LOG_LEVEL_CRITICAL
);
12
13
gdk_set_allowed_backends
(
backends:
"x11"
);
14
display_name
=
g_getenv
(
variable:
"DISPLAY"
);
15
g_unsetenv
(
variable:
"DISPLAY"
);
16
has_display
=
gtk_init_check
();
17
g_assert_false
(
has_display
);
18
19
display
=
gdk_display_open
(
display_name
);
20
21
if
(!
display
)
22
return
0
;
23
24
gdk_display_manager_set_default_display
(
manager:
gdk_display_manager_get
(),
display
);
25
26
win
=
gtk_window_new
();
27
28
but
=
gtk_button_new_with_label
(
label:
"Try to Exit"
);
29
g_signal_connect_swapped
(
but
,
"clicked"
,
30
G_CALLBACK
(
gtk_window_destroy
),
win
);
31
gtk_window_set_child
(
GTK_WINDOW
(
win
),
child:
but
);
32
33
gtk_widget_show
(
widget:
win
);
34
35
gtk_test_widget_wait_for_draw
(
widget:
win
);
36
37
gdk_display_close
(
display
);
38
39
return
0
;
40
}
41