X-Git-Url: http://git.tdb.fi/?a=blobdiff_plain;f=gtk-gui.c;h=e15c94424fcd90014fb855ff67eb083de1a87377;hb=da47ee401d0b0ee9d2aed10aa934831b8ed02b55;hp=7eb85cf806a1b5478429375eefd34d602d4c2dca;hpb=c3a484419731e680e343153f9fd32ed9e2695747;p=ext%2Fsubsurface.git diff --git a/gtk-gui.c b/gtk-gui.c index 7eb85cf..e15c944 100644 --- a/gtk-gui.c +++ b/gtk-gui.c @@ -613,21 +613,23 @@ static void fill_computer_list(GtkListStore *store) } } -static GtkComboBox *dive_computer_selector(GtkWidget *dialog) +static GtkComboBox *dive_computer_selector(GtkWidget *vbox) { - GtkWidget *hbox, *combo_box, *vbox; + GtkWidget *hbox, *combo_box, *frame; GtkListStore *model; GtkCellRenderer *renderer; hbox = gtk_hbox_new(FALSE, 6); - vbox = gtk_dialog_get_content_area(GTK_DIALOG(dialog)); gtk_box_pack_start(GTK_BOX(vbox), hbox, FALSE, FALSE, 3); model = gtk_list_store_new(2, G_TYPE_STRING, G_TYPE_INT); fill_computer_list(model); + frame = gtk_frame_new("Dive computer"); + gtk_box_pack_start(GTK_BOX(hbox), frame, FALSE, TRUE, 3); + combo_box = gtk_combo_box_new_with_model(GTK_TREE_MODEL(model)); - gtk_box_pack_start(GTK_BOX(hbox), combo_box, FALSE, TRUE, 3); + gtk_container_add(GTK_CONTAINER(frame), combo_box); renderer = gtk_cell_renderer_text_new(); gtk_cell_layout_pack_start(GTK_CELL_LAYOUT(combo_box), renderer, TRUE); @@ -636,13 +638,31 @@ static GtkComboBox *dive_computer_selector(GtkWidget *dialog) return GTK_COMBO_BOX(combo_box); } +static GtkEntry *dive_computer_device(GtkWidget *vbox) +{ + GtkWidget *hbox, *entry, *frame; + + hbox = gtk_hbox_new(FALSE, 6); + gtk_box_pack_start(GTK_BOX(vbox), hbox, FALSE, FALSE, 3); + + frame = gtk_frame_new("Device name"); + gtk_box_pack_start(GTK_BOX(hbox), frame, FALSE, TRUE, 3); + + entry = gtk_entry_new(); + gtk_container_add(GTK_CONTAINER(frame), entry); + gtk_entry_set_text(GTK_ENTRY(entry), "/dev/ttyUSB0"); + + return GTK_ENTRY(entry); +} + void import_dialog(GtkWidget *w, gpointer data) { int result; GtkWidget *dialog, *hbox, *vbox; GtkComboBox *computer; + GtkEntry *device; device_data_t devicedata = { - .devname = "/dev/ttyUSB0", + .devname = NULL, }; dialog = gtk_dialog_new_with_buttons("Import from dive computer", @@ -652,10 +672,12 @@ void import_dialog(GtkWidget *w, gpointer data) GTK_STOCK_CANCEL, GTK_RESPONSE_REJECT, NULL); - computer = dive_computer_selector(dialog); + vbox = gtk_dialog_get_content_area(GTK_DIALOG(dialog)); + + computer = dive_computer_selector(vbox); + device = dive_computer_device(vbox); hbox = gtk_hbox_new(FALSE, 6); - vbox = gtk_dialog_get_content_area(GTK_DIALOG(dialog)); gtk_box_pack_start(GTK_BOX(vbox), hbox, FALSE, TRUE, 3); devicedata.progress.bar = gtk_progress_bar_new(); gtk_container_add(GTK_CONTAINER(hbox), devicedata.progress.bar); @@ -677,6 +699,7 @@ void import_dialog(GtkWidget *w, gpointer data) -1); devicedata.type = type; devicedata.name = comp; + devicedata.devname = gtk_entry_get_text(device); do_import(&devicedata); break; default: