Initial commit, partially working
[wai] / src / interface.c
1 #include "interface.h"
2 #include <hildon/hildon.h>
3
4 UserInterface*
5 create_ui()
6 {
7     UserInterface *ui = g_new0(UserInterface, 1);
8
9     GtkWidget *main_win;
10
11     GtkWidget *vbox;
12     GtkWidget *first_hbox;
13     GtkWidget *second_hbox;
14     GtkWidget *third_hbox;
15
16     GtkWidget *pannable_area; 
17         
18     GtkWidget *lat_label;
19     GtkWidget *lon_label;
20     GtkWidget *altitude_label;
21     GtkWidget *speed_label;
22     GtkWidget *fix_status_label;
23
24     GtkLabel *lat_val_label;
25     GtkLabel *lon_val_label;
26     GtkLabel *alt_val_label;
27     GtkLabel *speed_val_label;
28     GtkLabel *fix_status_val_label;
29
30     
31     
32     main_win = hildon_stackable_window_new ();
33     gtk_window_set_title ( GTK_WINDOW (main_win), "WAI");
34         
35     pannable_area = hildon_pannable_area_new ();
36     vbox = gtk_vbox_new (FALSE, 0);
37
38     first_hbox = gtk_hbox_new (FALSE, 0);
39     second_hbox = gtk_hbox_new (FALSE, 0);
40     third_hbox = gtk_hbox_new (FALSE, 0);
41     
42     
43     lat_label = gtk_label_new("Lat:");
44     lon_label = gtk_label_new("Lon:");
45
46     lat_val_label = GTK_LABEL(gtk_label_new("-"));
47     lon_val_label = GTK_LABEL(gtk_label_new("-"));
48
49     altitude_label = gtk_label_new("Altitude:");
50     speed_label = gtk_label_new("Speed:");
51     fix_status_label = gtk_label_new("Fix Status:");
52     
53     alt_val_label = GTK_LABEL(gtk_label_new("-"));
54     speed_val_label = GTK_LABEL(gtk_label_new("-"));
55     fix_status_val_label = GTK_LABEL(gtk_label_new("-"));
56         
57     gtk_container_add (GTK_CONTAINER (first_hbox),
58                        lat_label);
59     gtk_container_add (GTK_CONTAINER (first_hbox),
60                        GTK_WIDGET (lat_val_label ));
61     gtk_container_add (GTK_CONTAINER (first_hbox),
62                        lon_label);
63     gtk_container_add (GTK_CONTAINER (first_hbox),
64                        GTK_WIDGET (lon_val_label));
65
66     gtk_container_add (GTK_CONTAINER (vbox),
67                        first_hbox);
68
69     gtk_container_add (GTK_CONTAINER (second_hbox),
70                        altitude_label);
71     gtk_container_add (GTK_CONTAINER (second_hbox),
72                        GTK_WIDGET (alt_val_label ));
73     gtk_container_add (GTK_CONTAINER (second_hbox),
74                        speed_label);
75     gtk_container_add (GTK_CONTAINER (second_hbox),
76                        GTK_WIDGET (speed_val_label ));
77     
78
79     gtk_container_add (GTK_CONTAINER (vbox),
80                        second_hbox);
81
82     gtk_container_add (GTK_CONTAINER (third_hbox),
83                        fix_status_label);
84     gtk_container_add (GTK_CONTAINER (third_hbox),
85                        GTK_WIDGET (fix_status_val_label ));
86         
87     gtk_container_add (GTK_CONTAINER (vbox),
88                        third_hbox);
89
90     hildon_pannable_area_add_with_viewport (
91         HILDON_PANNABLE_AREA (pannable_area), vbox);
92     gtk_container_add (GTK_CONTAINER (main_win),
93                        pannable_area);
94     
95     ui->window = main_win;
96     ui->latitude_value_label = lat_val_label;
97     ui->longitude_value_label = lon_val_label;
98     ui->altitude_value_label = alt_val_label;
99     ui->speed_value_label = speed_val_label;
100 //    ui->fix_status_label = fix_status_val_label;
101     
102     gtk_widget_show_all (main_win);
103
104     return ui;
105 }