[frogr] Moved the logic to compare two groups to FrogrGroup, where it belongs
- From: Mario Sanchez Prada <msanchez src gnome org>
- To: commits-list gnome org
- Cc:
- Subject: [frogr] Moved the logic to compare two groups to FrogrGroup, where it belongs
- Date: Tue, 29 Dec 2015 18:02:48 +0000 (UTC)
commit 36446e87a795b9e3240a3d1792c39e70e1bdaf85
Author: Mario Sanchez Prada <msanchez gnome org>
Date: Tue Dec 29 17:14:47 2015 +0000
Moved the logic to compare two groups to FrogrGroup, where it belongs
src/frogr-group.c | 17 +++++++++++++++++
src/frogr-group.h | 2 ++
src/frogr-picture.c | 27 +--------------------------
3 files changed, 20 insertions(+), 26 deletions(-)
---
diff --git a/src/frogr-group.c b/src/frogr-group.c
index 5d4c523..4cc0ed9 100644
--- a/src/frogr-group.c
+++ b/src/frogr-group.c
@@ -262,3 +262,20 @@ frogr_group_set_n_photos (FrogrGroup *self,
self->n_photos = n;
}
+gint
+frogr_group_compare (FrogrGroup *self, FrogrGroup *other)
+{
+ g_return_val_if_fail (FROGR_IS_GROUP (self), 1);
+ g_return_val_if_fail (FROGR_IS_GROUP (other), -1);
+
+ if (self == other)
+ return 0;
+
+ if (self->id != NULL && other->id != NULL)
+ return g_strcmp0 (self->id, other->id);
+
+ if (self->id != NULL)
+ return 1;
+ else
+ return -1;
+}
diff --git a/src/frogr-group.h b/src/frogr-group.h
index 7698350..3beb11a 100644
--- a/src/frogr-group.h
+++ b/src/frogr-group.h
@@ -52,6 +52,8 @@ void frogr_group_set_privacy (FrogrGroup *self, FspGroupPrivacy privacy);
gint frogr_group_get_n_photos (FrogrGroup *self);
void frogr_group_set_n_photos (FrogrGroup *self, gint n);
+gint frogr_group_compare (FrogrGroup *self, FrogrGroup *other);
+
G_END_DECLS
#endif
diff --git a/src/frogr-picture.c b/src/frogr-picture.c
index 38cf39e..d51c320 100644
--- a/src/frogr-picture.c
+++ b/src/frogr-picture.c
@@ -101,8 +101,6 @@ static void _add_tags_to_tags_list (FrogrPicture *self,
const gchar *tags_string);
static void _update_tags_string (FrogrPicture *self);
-static gint _compare_groups (FrogrGroup *group1, FrogrGroup *group2);
-
static JsonNode *_serialize_list (GSList *objects_list, GType g_type);
static gboolean _deserialize_list (JsonNode *node, GValue *value, GType g_type);
@@ -203,29 +201,6 @@ _update_tags_string (FrogrPicture *self)
}
}
-static gint
-_compare_groups (FrogrGroup *group1, FrogrGroup *group2)
-{
- const gchar *id1 = NULL;
- const gchar *id2 = NULL;
-
- g_return_val_if_fail (FROGR_IS_GROUP (group1), 1);
- g_return_val_if_fail (FROGR_IS_GROUP (group2), -1);
-
- if (group1 == group2)
- return 0;
-
- id1 = frogr_group_get_id (group1);
- id2 = frogr_group_get_id (group2);
- if (id1 != NULL && id2 != NULL)
- return g_strcmp0 (id1, id2);
-
- if (id1 != NULL)
- return 1;
- else
- return -1;
-}
-
static JsonNode *
_serialize_list (GSList *objects_list, GType g_type)
{
@@ -1201,7 +1176,7 @@ frogr_picture_in_group (FrogrPicture *self, FrogrGroup *group)
g_return_val_if_fail(FROGR_IS_PICTURE(self), FALSE);
if (g_slist_find_custom (self->groups, group,
- (GCompareFunc)_compare_groups))
+ (GCompareFunc)frogr_group_compare))
return TRUE;
return FALSE;
[
Date Prev][
Date Next] [
Thread Prev][
Thread Next]
[
Thread Index]
[
Date Index]
[
Author Index]