{
struct dlgparam *dp = (struct dlgparam *)dlg;
struct uctrl *uc = dlg_find_byctrl(dp, ctrl);
- GtkContainer *cont;
assert(uc->ctrl->generic.type == CTRL_EDITBOX ||
uc->ctrl->generic.type == CTRL_LISTBOX);
assert(uc->menu != NULL || uc->list != NULL);
- cont = (uc->menu ? GTK_CONTAINER(uc->menu) : GTK_CONTAINER(uc->list));
-
- gtk_container_foreach(cont, container_remove_and_destroy, cont);
+ if (uc->menu) {
+ gtk_container_foreach(GTK_CONTAINER(uc->menu),
+ container_remove_and_destroy,
+ GTK_CONTAINER(uc->menu));
+ } else {
+ gtk_list_clear_items(GTK_LIST(uc->list), 0, -1);
+ }
}
void dlg_listbox_del(union control *ctrl, void *dlg, int index)
if (uc->menu)
activeitem = gtk_menu_get_active(GTK_MENU(uc->menu));
+ else
+ activeitem = NULL; /* unnecessarily placate gcc */
children = gtk_container_children(GTK_CONTAINER(uc->menu ? uc->menu :
uc->list));
window = gtk_dialog_new();
ctrlbox = ctrl_new_box();
- setup_config_box(ctrlbox, &sl, midsession, 0);
+ setup_config_box(ctrlbox, &sl, midsession, cfg->protocol);
unix_setup_config_box(ctrlbox, midsession, window);
gtk_window_set_title(GTK_WINDOW(window), title);