diff options
author | Matthew Barnes <mbarnes@redhat.com> | 2013-02-21 01:36:46 +0800 |
---|---|---|
committer | Matthew Barnes <mbarnes@redhat.com> | 2013-02-21 05:35:58 +0800 |
commit | f8ff0f0fde14b3f80663d74ac6a5f7f83d12b0ec (patch) | |
tree | b98d643815af439fb8431c0bfff8b79462adc4b9 /e-util | |
parent | a955be9b70fd556310fc4c07aeef91c99bde3aaf (diff) | |
download | gsoc2013-evolution-f8ff0f0fde14b3f80663d74ac6a5f7f83d12b0ec.tar gsoc2013-evolution-f8ff0f0fde14b3f80663d74ac6a5f7f83d12b0ec.tar.gz gsoc2013-evolution-f8ff0f0fde14b3f80663d74ac6a5f7f83d12b0ec.tar.bz2 gsoc2013-evolution-f8ff0f0fde14b3f80663d74ac6a5f7f83d12b0ec.tar.lz gsoc2013-evolution-f8ff0f0fde14b3f80663d74ac6a5f7f83d12b0ec.tar.xz gsoc2013-evolution-f8ff0f0fde14b3f80663d74ac6a5f7f83d12b0ec.tar.zst gsoc2013-evolution-f8ff0f0fde14b3f80663d74ac6a5f7f83d12b0ec.zip |
Add e_source_selector_ref_source_by_iter().
Diffstat (limited to 'e-util')
-rw-r--r-- | e-util/e-source-selector.c | 31 | ||||
-rw-r--r-- | e-util/e-source-selector.h | 3 |
2 files changed, 34 insertions, 0 deletions
diff --git a/e-util/e-source-selector.c b/e-util/e-source-selector.c index b746230a59..15f7781dcb 100644 --- a/e-util/e-source-selector.c +++ b/e-util/e-source-selector.c @@ -1911,6 +1911,37 @@ e_source_selector_set_primary_selection (ESourceSelector *selector, } /** + * e_source_selector_ref_source_by_iter: + * @selector: an #ESourceSelector + * @iter: a #GtkTreeIter + * + * Returns the #ESource object at @iter. + * + * The returned #ESource is referenced for thread-safety and must be + * unreferenced with g_object_unref() when finished with it. + * + * Returns: the #ESource object at @iter, or %NULL + * + * Since: 3.8 + **/ +ESource * +e_source_selector_ref_source_by_iter (ESourceSelector *selector, + GtkTreeIter *iter) +{ + ESource *source = NULL; + GtkTreeModel *model; + + g_return_val_if_fail (E_IS_SOURCE_SELECTOR (selector), NULL); + g_return_val_if_fail (iter != NULL, NULL); + + model = gtk_tree_view_get_model (GTK_TREE_VIEW (selector)); + + gtk_tree_model_get (model, iter, COLUMN_SOURCE, &source, -1); + + return source; +} + +/** * e_source_selector_ref_source_by_path: * @selector: an #ESourceSelector * @path: a #GtkTreePath diff --git a/e-util/e-source-selector.h b/e-util/e-source-selector.h index e25142146a..b49d65a782 100644 --- a/e-util/e-source-selector.h +++ b/e-util/e-source-selector.h @@ -130,6 +130,9 @@ ESource * e_source_selector_ref_primary_selection void e_source_selector_set_primary_selection (ESourceSelector *selector, ESource *source); +ESource * e_source_selector_ref_source_by_iter + (ESourceSelector *selector, + GtkTreeIter *iter); ESource * e_source_selector_ref_source_by_path (ESourceSelector *selector, GtkTreePath *path); |