Index: src/poi.c =================================================================== --- src/poi.c (revision 14) +++ src/poi.c (revision 15) @@ -1228,6 +1228,7 @@ GtkTextIter begin, end; DeletePOI dpoi; PoiCategoryEditInfo pcedit; + gint cols = (DEG_FORMAT_ENUM_TEXT[_degformat].field_2_in_use) ? 6 : 4; gchar tmp1[LL_FMT_LEN], tmp2[LL_FMT_LEN]; @@ -1243,31 +1244,30 @@ else if(_degformat != last_deg_format) last_deg_format = _degformat; - if (is_add_dialog) - { - dialog = gtk_dialog_new_with_buttons(_("Add POI"), - GTK_WINDOW(parent), GTK_DIALOG_MODAL, - GTK_STOCK_OK, GTK_RESPONSE_ACCEPT, - GTK_STOCK_CANCEL, GTK_RESPONSE_REJECT, - NULL); - } - else - { - dialog = gtk_dialog_new_with_buttons(_("Edit POI"), - GTK_WINDOW(parent), GTK_DIALOG_MODAL, - GTK_STOCK_OK, GTK_RESPONSE_ACCEPT, - NULL); + dialog = gtk_dialog_new_with_buttons(_("Add POI"), + GTK_WINDOW(parent), GTK_DIALOG_MODAL, + GTK_STOCK_OK, GTK_RESPONSE_ACCEPT, + NULL); + if (!is_add_dialog) + { gtk_container_add(GTK_CONTAINER(GTK_DIALOG(dialog)->action_area), btn_delete = gtk_button_new_with_label(_("Delete..."))); - - gtk_dialog_add_button(GTK_DIALOG(dialog), - GTK_STOCK_CANCEL, GTK_RESPONSE_REJECT); + g_signal_connect(G_OBJECT(btn_delete), "clicked", + G_CALLBACK(poi_delete), &dpoi); } + gtk_container_add(GTK_CONTAINER(GTK_DIALOG(dialog)->action_area), + btn_catedit = gtk_button_new_with_label(_("Edit Cats..."))); + g_signal_connect(G_OBJECT(btn_catedit), "clicked", + G_CALLBACK(poi_edit_cat), &pcedit); + + gtk_dialog_add_button(GTK_DIALOG(dialog), + GTK_STOCK_CANCEL, GTK_RESPONSE_REJECT); + /* Set the lat/lon strings. */ gtk_box_pack_start(GTK_BOX(GTK_DIALOG(dialog)->vbox), - table = gtk_table_new(6, 4, FALSE), TRUE, TRUE, 0); + table = gtk_table_new(6, cols, FALSE), TRUE, TRUE, 0); gtk_table_attach(GTK_TABLE(table), label = gtk_label_new(DEG_FORMAT_ENUM_TEXT[_degformat] @@ -1292,31 +1292,23 @@ } gtk_table_attach(GTK_TABLE(table), - label = gtk_label_new(_("Label")), - 0, 1, 1, 2, GTK_FILL, 0, 2, 0); + label = gtk_label_new(_("Cat")), + cols - 2, cols - 1, 0, 1, GTK_FILL, 0, 2, 0); gtk_misc_set_alignment(GTK_MISC(label), 1.f, 0.5f); gtk_table_attach(GTK_TABLE(table), - txt_label = gtk_entry_new(), - 1, 4, 1, 2, GTK_EXPAND | GTK_FILL, 0, 2, 0); + cmb_category = poi_create_cat_combo(), + cols - 1, cols - 0, 0, 1, GTK_EXPAND | GTK_FILL, 0, 2, 0); gtk_table_attach(GTK_TABLE(table), - label = gtk_label_new(_("Category")), - 0, 1, 3, 4, GTK_FILL, 0, 2, 0); + label = gtk_label_new(_("Label")), + 0, 1, 1, 2, GTK_FILL, 0, 2, 0); gtk_misc_set_alignment(GTK_MISC(label), 1.f, 0.5f); gtk_table_attach(GTK_TABLE(table), - hbox = gtk_hbox_new(FALSE, 4), - 1, 4, 3, 4, GTK_EXPAND | GTK_FILL, 0, 2, 0); - gtk_box_pack_start(GTK_BOX(hbox), - cmb_category = poi_create_cat_combo(), - FALSE, FALSE, 0); + txt_label = gtk_entry_new(), + 1, cols, 1, 2, GTK_EXPAND | GTK_FILL, 0, 2, 0); - gtk_box_pack_start(GTK_BOX(hbox), - btn_catedit = gtk_button_new_with_label( - _("Edit Categories...")), - FALSE, FALSE, 0); - gtk_table_attach(GTK_TABLE(table), - label = gtk_label_new(_("Description")), + label = gtk_label_new(_("Desc")), 0, 1, 5, 6, GTK_FILL, GTK_FILL, 2, 0); gtk_misc_set_alignment(GTK_MISC(label), 1.f, 0.0f); @@ -1325,22 +1317,20 @@ GTK_SHADOW_IN); gtk_table_attach(GTK_TABLE(table), txt_scroll, - 1, 4, 5, 6, GTK_EXPAND | GTK_FILL, 0, 2, 0); + 1, cols, 5, 6, GTK_EXPAND | GTK_FILL, 0, 2, 0); gtk_scrolled_window_set_policy(GTK_SCROLLED_WINDOW(txt_scroll), - GTK_POLICY_AUTOMATIC, GTK_POLICY_AUTOMATIC); + GTK_POLICY_NEVER, GTK_POLICY_AUTOMATIC); txt_desc = gtk_text_view_new(); - gtk_text_view_set_wrap_mode(GTK_TEXT_VIEW(txt_desc), GTK_WRAP_WORD); + gtk_text_view_set_wrap_mode(GTK_TEXT_VIEW(txt_desc), + GTK_WRAP_WORD_CHAR); gtk_container_add(GTK_CONTAINER(txt_scroll), txt_desc); - gtk_widget_set_size_request(GTK_WIDGET(txt_scroll), 550, 120); + gtk_widget_set_size_request(GTK_WIDGET(txt_scroll), 600, 200); desc_txt = gtk_text_view_get_buffer(GTK_TEXT_VIEW (txt_desc)); - g_signal_connect(G_OBJECT(btn_catedit), "clicked", - G_CALLBACK(poi_edit_cat), &pcedit); - dpoi.txt_label = NULL; dpoi.deleted = FALSE; if (!is_add_dialog) @@ -1348,9 +1338,6 @@ dpoi.dialog = dialog; dpoi.txt_label = g_strdup(poi->label); dpoi.id = poi->poi_id; - - g_signal_connect(G_OBJECT(btn_delete), "clicked", - G_CALLBACK(poi_delete), &dpoi); } /* Lat/Lon */