[gnome-todo] provider: Add get_inbox vfunc
- From: Georges Basile Stavracas Neto <gbsneto src gnome org>
- To: commits-list gnome org
- Cc:
- Subject: [gnome-todo] provider: Add get_inbox vfunc
- Date: Sun, 26 Apr 2020 22:12:13 +0000 (UTC)
commit ec0975a987ceb4e265a2c577a825737d0cb7b442
Author: Georges Basile Stavracas Neto <georges stavracas gmail com>
Date: Sun Apr 26 17:37:41 2020 -0300
provider: Add get_inbox vfunc
plugins/eds/gtd-provider-eds.c | 9 +++++++++
src/interfaces/gtd-provider.c | 19 ++++++++++++++++++-
src/interfaces/gtd-provider.h | 6 +++++-
3 files changed, 32 insertions(+), 2 deletions(-)
---
diff --git a/plugins/eds/gtd-provider-eds.c b/plugins/eds/gtd-provider-eds.c
index 229f0b9..547219c 100644
--- a/plugins/eds/gtd-provider-eds.c
+++ b/plugins/eds/gtd-provider-eds.c
@@ -764,6 +764,14 @@ gtd_provider_eds_get_task_lists (GtdProvider *provider)
return g_hash_table_get_values (priv->task_lists);
}
+static GtdTaskList*
+gtd_provider_eds_get_inbox (GtdProvider *provider)
+{
+ GtdProviderEdsPrivate *priv = gtd_provider_eds_get_instance_private (GTD_PROVIDER_EDS (provider));
+
+ return g_hash_table_lookup (priv->task_lists, "system-task-list");
+}
+
static GtdTaskList*
gtd_provider_eds_get_default_task_list (GtdProvider *provider)
{
@@ -820,6 +828,7 @@ gtd_provider_iface_init (GtdProviderInterface *iface)
iface->update_task_list = gtd_provider_eds_update_task_list;
iface->remove_task_list = gtd_provider_eds_remove_task_list;
iface->get_task_lists = gtd_provider_eds_get_task_lists;
+ iface->get_inbox = gtd_provider_eds_get_inbox;
iface->get_default_task_list = gtd_provider_eds_get_default_task_list;
iface->set_default_task_list = gtd_provider_eds_set_default_task_list;
}
diff --git a/src/interfaces/gtd-provider.c b/src/interfaces/gtd-provider.c
index 85d0279..c1f28cf 100644
--- a/src/interfaces/gtd-provider.c
+++ b/src/interfaces/gtd-provider.c
@@ -1,6 +1,6 @@
/* gtd-provider.c
*
- * Copyright (C) 2015 Georges Basile Stavracas Neto <georges stavracas gmail com>
+ * Copyright (C) 2015-2020 Georges Basile Stavracas Neto <georges stavracas gmail com>
*
* This program is free software: you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
@@ -481,6 +481,23 @@ gtd_provider_set_default_task_list (GtdProvider *provider,
return GTD_PROVIDER_GET_IFACE (provider)->set_default_task_list (provider, list);
}
+/**
+ * gtd_provider_get_inbox:
+ * @provider: a #GtdProvider
+ *
+ * Retrieves the inbox of @provider.
+ *
+ * Returns: (transfer none)(nullable): a #GtdTaskList
+ */
+GtdTaskList*
+gtd_provider_get_inbox (GtdProvider *provider)
+{
+ g_return_val_if_fail (GTD_IS_PROVIDER (provider), NULL);
+ g_return_val_if_fail (GTD_PROVIDER_GET_IFACE (provider)->get_inbox, NULL);
+
+ return GTD_PROVIDER_GET_IFACE (provider)->get_inbox (provider);
+}
+
/**
* gtd_provider_compare:
* @a: a #GtdProvider
diff --git a/src/interfaces/gtd-provider.h b/src/interfaces/gtd-provider.h
index ce77a57..d303c8d 100644
--- a/src/interfaces/gtd-provider.h
+++ b/src/interfaces/gtd-provider.h
@@ -1,6 +1,6 @@
/* gtd-storage.h
*
- * Copyright (C) 2015 Georges Basile Stavracas Neto <georges stavracas gmail com>
+ * Copyright (C) 2015-2020 Georges Basile Stavracas Neto <georges stavracas gmail com>
*
* This program is free software: you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
@@ -79,6 +79,8 @@ struct _GtdProviderInterface
void (*set_default_task_list) (GtdProvider *provider,
GtdTaskList *list);
+
+ GtdTaskList* (*get_inbox) (GtdProvider *provider);
};
const gchar* gtd_provider_get_id (GtdProvider *provider);
@@ -122,6 +124,8 @@ GtdTaskList* gtd_provider_get_default_task_list (GtdProvider
void gtd_provider_set_default_task_list (GtdProvider *provider,
GtdTaskList *list);
+GtdTaskList* gtd_provider_get_inbox (GtdProvider *provider);
+
gint gtd_provider_compare (GtdProvider *a,
GtdProvider *b);
[
Date Prev][
Date Next] [
Thread Prev][
Thread Next]
[
Thread Index]
[
Date Index]
[
Author Index]