aboutsummaryrefslogtreecommitdiff
path: root/src/gns/gnunet-gns-gtk_zone.c
diff options
context:
space:
mode:
Diffstat (limited to 'src/gns/gnunet-gns-gtk_zone.c')
-rw-r--r--src/gns/gnunet-gns-gtk_zone.c29
1 files changed, 24 insertions, 5 deletions
diff --git a/src/gns/gnunet-gns-gtk_zone.c b/src/gns/gnunet-gns-gtk_zone.c
index 95e980e8..433fffab 100644
--- a/src/gns/gnunet-gns-gtk_zone.c
+++ b/src/gns/gnunet-gns-gtk_zone.c
@@ -42,6 +42,12 @@ enum
42 TREE_COL_NAME_IS_EDITABLE, 42 TREE_COL_NAME_IS_EDITABLE,
43}; 43};
44 44
45enum
46{
47 TYPE_LIST_TYPE = 0,
48 TYPE_LIST_TYPENAME
49};
50
45/** 51/**
46 * The user has selected a new record type. Update the 52 * The user has selected a new record type. Update the
47 * model, possibly invalidating (marking 'red') the existing 53 * model, possibly invalidating (marking 'red') the existing
@@ -54,11 +60,25 @@ enum
54 */ 60 */
55void 61void
56GNUNET_GNS_GTK_type_cellrenderercombo_changed_cb (GtkCellRendererCombo *combo, 62GNUNET_GNS_GTK_type_cellrenderercombo_changed_cb (GtkCellRendererCombo *combo,
57 gchar *path_string, 63 gchar *path,
58 GtkTreeIter *new_iter, 64 GtkTreeIter *new_iter,
59 gpointer user_data) 65 gpointer user_data)
60{ 66{
61 GNUNET_break (0); // FIXME, not implemented 67 struct GNUNET_GNS_Context *gns = user_data;
68 GtkTreeIter it;
69 GtkTreeModel *tm = GTK_TREE_MODEL(gns->ts);
70 guint value;
71 char * v_name;
72
73 gtk_tree_model_get(GTK_TREE_MODEL(gns->ls), new_iter, 0, &value, -1);
74
75 gtk_tree_model_get(GTK_TREE_MODEL(gns->ls), new_iter, TYPE_LIST_TYPENAME, &v_name, -1);
76 gtk_tree_model_get_iter_from_string(tm, &it, path);
77 gtk_tree_store_set(gns->ts, &it,
78 TREE_COL_RECORD_TYPE, value,
79 TREE_COL_RECORD_TYPE_AS_STR, v_name,
80 -1);
81
62} 82}
63 83
64 84
@@ -137,6 +157,7 @@ GNUNET_GNS_GTK_value_cellrenderertext_edited_cb (GtkCellRendererText *renderer,
137 &data_size)) 157 &data_size))
138 { 158 {
139 gtk_tree_model_get_iter_from_string(tm, &it, path); 159 gtk_tree_model_get_iter_from_string(tm, &it, path);
160 gtk_tree_store_set (gns->ts, &it, TREE_COL_VAL_COLOR, NULL, -1);
140 gtk_tree_store_set (gns->ts, &it, TREE_COL_VAL_AS_STR, new_text, -1); 161 gtk_tree_store_set (gns->ts, &it, TREE_COL_VAL_AS_STR, new_text, -1);
141 } 162 }
142 else 163 else
@@ -303,7 +324,7 @@ void zone_iteration_proc (void *cls,
303 gtk_tree_store_insert_with_values(zc_ctx->gns->ts, &iter_record , &iter_name, 0, 324 gtk_tree_store_insert_with_values(zc_ctx->gns->ts, &iter_record , &iter_name, 0,
304 TREE_COL_NAME, "", 325 TREE_COL_NAME, "",
305 TREE_COL_RECORD_TYPE, rd[c].record_type, 326 TREE_COL_RECORD_TYPE, rd[c].record_type,
306 TREE_COL_EXP_TIME_AS_STR, GNUNET_NAMESTORE_number_to_typename(rd[c].record_type), 327 TREE_COL_RECORD_TYPE_AS_STR, GNUNET_NAMESTORE_number_to_typename(rd[c].record_type),
307 TREE_COL_IS_PUBLIC, public, 328 TREE_COL_IS_PUBLIC, public,
308 TREE_COL_EXP_TIME_AS_STR, exp, 329 TREE_COL_EXP_TIME_AS_STR, exp,
309 TREE_COL_EXP_TIME_IS_REL, time_is_relative, 330 TREE_COL_EXP_TIME_IS_REL, time_is_relative,
@@ -331,8 +352,6 @@ GNUNET_GNS_GTK_main_treeview_realize_cb (GtkWidget *widget,
331 GtkTreeIter toplevel; 352 GtkTreeIter toplevel;
332 353
333 /* Append a top level row and leave it empty */ 354 /* Append a top level row and leave it empty */
334 //gtk_tree_store_append(gns->ts, &toplevel, NULL);
335
336 gtk_tree_store_insert_with_values(gns->ts, &toplevel, NULL, 0, 355 gtk_tree_store_insert_with_values(gns->ts, &toplevel, NULL, 0,
337 TREE_COL_NAME, _(NEW_RECORD_STR), 356 TREE_COL_NAME, _(NEW_RECORD_STR),
338 TREE_COL_RECORD_TYPE, 1, 357 TREE_COL_RECORD_TYPE, 1,