1 | #include <gtk/gtk.h> |
2 | |
3 | |
4 | |
5 | int |
6 | main (int argc, char *argv[]) |
7 | { |
8 | GtkWidget *window; |
9 | GtkWidget *grid; |
10 | GtkWidget *label1; |
11 | GtkWidget *label2; |
12 | GtkWidget *label3; |
13 | GtkWidget *label4; |
14 | |
15 | g_setenv (variable: "GTK_DEBUG" , value: "baselines,layout" , TRUE); |
16 | gtk_init (); |
17 | |
18 | window = gtk_window_new (); |
19 | grid = gtk_grid_new (); |
20 | gtk_grid_set_row_spacing (GTK_GRID (grid), spacing: 30); |
21 | gtk_grid_set_column_spacing (GTK_GRID (grid), spacing: 30); |
22 | gtk_window_set_child (GTK_WINDOW (window), child: grid); |
23 | |
24 | label1 = gtk_label_new (str: "Some Text" ); |
25 | label2 = gtk_label_new (str: "QQQQQQQQQ" ); |
26 | label3 = gtk_label_new (str: "Some Text" ); |
27 | label4 = gtk_label_new (str: "Some Text" ); |
28 | |
29 | g_message ("label1: %p" , label1); |
30 | g_message ("label2: %p" , label2); |
31 | g_message ("label3: %p" , label3); |
32 | g_message ("label4: %p" , label4); |
33 | |
34 | gtk_widget_set_valign (widget: label1, align: GTK_ALIGN_BASELINE); |
35 | gtk_widget_set_valign (widget: label2, align: GTK_ALIGN_BASELINE); |
36 | gtk_widget_set_valign (widget: label3, align: GTK_ALIGN_START); |
37 | gtk_widget_set_valign (widget: label4, align: GTK_ALIGN_START); |
38 | |
39 | gtk_widget_set_margin_top (widget: label1, margin: 12); |
40 | gtk_widget_set_margin_bottom (widget: label2, margin: 18); |
41 | gtk_widget_set_margin_top (widget: label3, margin: 30); |
42 | |
43 | |
44 | /* |
45 | * Since none of the widgets in the second row request baseline alignment, |
46 | * GtkGrid should not compute or apply a baseline for those widgets. |
47 | */ |
48 | |
49 | |
50 | gtk_grid_attach (GTK_GRID (grid), child: label1, column: 0, row: 0, width: 1, height: 1); |
51 | gtk_grid_attach (GTK_GRID (grid), child: label2, column: 1, row: 0, width: 1, height: 1); |
52 | gtk_grid_attach (GTK_GRID (grid), child: label3, column: 0, row: 1, width: 1, height: 1); |
53 | gtk_grid_attach (GTK_GRID (grid), child: label4, column: 1, row: 1, width: 1, height: 1); |
54 | |
55 | gtk_widget_show (widget: window); |
56 | while (TRUE) |
57 | g_main_context_iteration (NULL, TRUE); |
58 | return 0; |
59 | } |
60 | |