Initial commit, partially working
[wai] / src / interface.c
diff --git a/src/interface.c b/src/interface.c
new file mode 100644 (file)
index 0000000..c1b4818
--- /dev/null
@@ -0,0 +1,105 @@
+#include "interface.h"
+#include <hildon/hildon.h>
+
+UserInterface*
+create_ui()
+{
+    UserInterface *ui = g_new0(UserInterface, 1);
+
+    GtkWidget *main_win;
+
+    GtkWidget *vbox;
+    GtkWidget *first_hbox;
+    GtkWidget *second_hbox;
+    GtkWidget *third_hbox;
+
+    GtkWidget *pannable_area; 
+        
+    GtkWidget *lat_label;
+    GtkWidget *lon_label;
+    GtkWidget *altitude_label;
+    GtkWidget *speed_label;
+    GtkWidget *fix_status_label;
+
+    GtkLabel *lat_val_label;
+    GtkLabel *lon_val_label;
+    GtkLabel *alt_val_label;
+    GtkLabel *speed_val_label;
+    GtkLabel *fix_status_val_label;
+
+    
+    
+    main_win = hildon_stackable_window_new ();
+    gtk_window_set_title ( GTK_WINDOW (main_win), "WAI");
+        
+    pannable_area = hildon_pannable_area_new ();
+    vbox = gtk_vbox_new (FALSE, 0);
+
+    first_hbox = gtk_hbox_new (FALSE, 0);
+    second_hbox = gtk_hbox_new (FALSE, 0);
+    third_hbox = gtk_hbox_new (FALSE, 0);
+    
+    
+    lat_label = gtk_label_new("Lat:");
+    lon_label = gtk_label_new("Lon:");
+
+    lat_val_label = GTK_LABEL(gtk_label_new("-"));
+    lon_val_label = GTK_LABEL(gtk_label_new("-"));
+
+    altitude_label = gtk_label_new("Altitude:");
+    speed_label = gtk_label_new("Speed:");
+    fix_status_label = gtk_label_new("Fix Status:");
+    
+    alt_val_label = GTK_LABEL(gtk_label_new("-"));
+    speed_val_label = GTK_LABEL(gtk_label_new("-"));
+    fix_status_val_label = GTK_LABEL(gtk_label_new("-"));
+        
+    gtk_container_add (GTK_CONTAINER (first_hbox),
+                       lat_label);
+    gtk_container_add (GTK_CONTAINER (first_hbox),
+                       GTK_WIDGET (lat_val_label ));
+    gtk_container_add (GTK_CONTAINER (first_hbox),
+                       lon_label);
+    gtk_container_add (GTK_CONTAINER (first_hbox),
+                       GTK_WIDGET (lon_val_label));
+
+    gtk_container_add (GTK_CONTAINER (vbox),
+                       first_hbox);
+
+    gtk_container_add (GTK_CONTAINER (second_hbox),
+                       altitude_label);
+    gtk_container_add (GTK_CONTAINER (second_hbox),
+                       GTK_WIDGET (alt_val_label ));
+    gtk_container_add (GTK_CONTAINER (second_hbox),
+                       speed_label);
+    gtk_container_add (GTK_CONTAINER (second_hbox),
+                       GTK_WIDGET (speed_val_label ));
+    
+
+    gtk_container_add (GTK_CONTAINER (vbox),
+                       second_hbox);
+
+    gtk_container_add (GTK_CONTAINER (third_hbox),
+                       fix_status_label);
+    gtk_container_add (GTK_CONTAINER (third_hbox),
+                       GTK_WIDGET (fix_status_val_label ));
+        
+    gtk_container_add (GTK_CONTAINER (vbox),
+                       third_hbox);
+
+    hildon_pannable_area_add_with_viewport (
+        HILDON_PANNABLE_AREA (pannable_area), vbox);
+    gtk_container_add (GTK_CONTAINER (main_win),
+                       pannable_area);
+    
+    ui->window = main_win;
+    ui->latitude_value_label = lat_val_label;
+    ui->longitude_value_label = lon_val_label;
+    ui->altitude_value_label = alt_val_label;
+    ui->speed_value_label = speed_val_label;
+//    ui->fix_status_label = fix_status_val_label;
+    
+    gtk_widget_show_all (main_win);
+
+    return ui;
+}