void submit (Ekiga::FormBuilder &builder) { GtkTreeModel *model = NULL; GtkTreeIter iter; gboolean active = FALSE; std::set<std::string> values; model = gtk_tree_view_get_model (GTK_TREE_VIEW (tree_view)); if (gtk_tree_model_get_iter_first (GTK_TREE_MODEL (model), &iter)) { do { gchar *gname = NULL; gtk_tree_model_get (GTK_TREE_MODEL (model), &iter, COLUMN_ACTIVE, &active, COLUMN_NAME, &gname, -1); if (active && gname) { values.insert (gname); std::map <std::string, std::string>::const_iterator mit; mit = choices.find (gname); if (mit == choices.end ()) choices [gname] = gname; } g_free (gname); } while (gtk_tree_model_iter_next (GTK_TREE_MODEL (model), &iter)); } builder.multiple_choice (name, description, values, choices, advanced); }