| 1816 } |
1816 } |
| 1817 |
1817 |
| 1818 static void add_selected_row_to_list(GtkTreeModel *model, GtkTreePath *path, |
1818 static void add_selected_row_to_list(GtkTreeModel *model, GtkTreePath *path, |
| 1819 GtkTreeIter *iter, gpointer data) |
1819 GtkTreeIter *iter, gpointer data) |
| 1820 { |
1820 { |
| |
1821 GtkTreeRowReference *row_reference; |
| 1821 GSList **list = (GSList **)data; |
1822 GSList **list = (GSList **)data; |
| 1822 *list = g_slist_prepend(*list, gtk_tree_path_copy(path)); |
1823 row_reference = gtk_tree_row_reference_new(model, path); |
| |
1824 *list = g_slist_prepend(*list, row_reference); |
| 1823 } |
1825 } |
| 1824 |
1826 |
| 1825 static void remove_row(void *data1, gpointer data2) |
1827 static void remove_row(void *data1, gpointer data2) |
| 1826 { |
1828 { |
| 1827 GtkTreePath *path = (GtkTreePath*)data1; |
1829 GtkTreeRowReference *row_reference; |
| |
1830 GtkTreePath *path; |
| 1828 GtkTreeIter iter; |
1831 GtkTreeIter iter; |
| |
1832 |
| |
1833 row_reference = (GtkTreeRowReference *)data1; |
| |
1834 path = gtk_tree_row_reference_get_path(row_reference); |
| |
1835 |
| 1829 if (gtk_tree_model_get_iter(GTK_TREE_MODEL(model), &iter, path)) |
1836 if (gtk_tree_model_get_iter(GTK_TREE_MODEL(model), &iter, path)) |
| 1830 gtk_list_store_remove(model, &iter); |
1837 gtk_list_store_remove(model, &iter); |
| |
1838 |
| 1831 gtk_tree_path_free(path); |
1839 gtk_tree_path_free(path); |
| |
1840 gtk_tree_row_reference_free(row_reference); |
| 1832 } |
1841 } |
| 1833 |
1842 |
| 1834 static void list_delete() |
1843 static void list_delete() |
| 1835 { |
1844 { |
| 1836 GtkTreeSelection *sel; |
1845 GtkTreeSelection *sel; |