[gnome-software] Add install date to GsApp
- From: Matthias Clasen <matthiasc src gnome org>
- To: commits-list gnome org
- Cc:
- Subject: [gnome-software] Add install date to GsApp
- Date: Tue, 27 Aug 2013 04:00:59 +0000 (UTC)
commit 498b6e7e64b31c4413af2287b4c007a9ad3a6815
Author: Matthias Clasen <mclasen redhat com>
Date: Mon Aug 26 23:58:20 2013 -0400
Add install date to GsApp
This will be used in sorting installed applications.
We don't have any plugins that fill it in yet.
src/gs-app.c | 29 ++++++++++++++++++++++++++++-
src/gs-app.h | 3 +++
2 files changed, 31 insertions(+), 1 deletions(-)
---
diff --git a/src/gs-app.c b/src/gs-app.c
index 88cdf6c..b0b95e8 100644
--- a/src/gs-app.c
+++ b/src/gs-app.c
@@ -42,7 +42,8 @@ struct GsAppPrivate
GHashTable *metadata;
GdkPixbuf *pixbuf;
GdkPixbuf *featured_pixbuf;
- GPtrArray *related; /* of GsApp */
+ GPtrArray *related; /* of GsApp */
+ guint64 install_date;
};
enum {
@@ -57,6 +58,7 @@ enum {
PROP_RATING,
PROP_KIND,
PROP_STATE,
+ PROP_INSTALL_DATE,
PROP_LAST
};
@@ -415,6 +417,20 @@ gs_app_add_related (GsApp *app, GsApp *app2)
g_ptr_array_add (app->priv->related, g_object_ref (app2));
}
+guint64
+gs_app_get_install_date (GsApp *app)
+{
+ g_return_val_if_fail (GS_IS_APP (app), 0);
+ return app->priv->install_date;
+}
+
+void
+gs_app_set_install_date (GsApp *app, guint64 install_date)
+{
+ g_return_if_fail (GS_IS_APP (app));
+ app->priv->install_date = install_date;
+}
+
/**
* gs_app_get_property:
*/
@@ -455,6 +471,9 @@ gs_app_get_property (GObject *object, guint prop_id, GValue *value, GParamSpec *
case PROP_STATE:
g_value_set_uint (value, priv->state);
break;
+ case PROP_INSTALL_DATE:
+ g_value_set_uint64 (value, priv->install_date);
+ break;
default:
G_OBJECT_WARN_INVALID_PROPERTY_ID (object, prop_id, pspec);
break;
@@ -500,6 +519,9 @@ gs_app_set_property (GObject *object, guint prop_id, const GValue *value, GParam
case PROP_STATE:
gs_app_set_state (app, g_value_get_uint (value));
break;
+ case PROP_INSTALL_DATE:
+ gs_app_set_install_date (app, g_value_get_uint64 (value));
+ break;
default:
G_OBJECT_WARN_INVALID_PROPERTY_ID (object, prop_id, pspec);
break;
@@ -597,6 +619,11 @@ gs_app_class_init (GsAppClass *klass)
G_PARAM_READWRITE | G_PARAM_CONSTRUCT);
g_object_class_install_property (object_class, PROP_STATE, pspec);
+ pspec = g_param_spec_uint64 ("install-date", NULL, NULL,
+ 0, G_MAXUINT64, 0,
+ G_PARAM_READWRITE | G_PARAM_CONSTRUCT);
+ g_object_class_install_property (object_class, PROP_INSTALL_DATE, pspec);
+
signals [SIGNAL_STATE_CHANGED] =
g_signal_new ("state-changed",
G_TYPE_FROM_CLASS (object_class), G_SIGNAL_RUN_LAST,
diff --git a/src/gs-app.h b/src/gs-app.h
index e0cd3e3..1f0ebe6 100644
--- a/src/gs-app.h
+++ b/src/gs-app.h
@@ -121,5 +121,8 @@ void gs_app_set_rating (GsApp *app,
GPtrArray *gs_app_get_related (GsApp *app);
void gs_app_add_related (GsApp *app,
GsApp *app2);
+guint64 gs_app_get_install_date (GsApp *app);
+void gs_app_set_install_date (GsApp *app,
+ guint64 install_date);
#endif /* __GS_APP_H */
[
Date Prev][
Date Next] [
Thread Prev][
Thread Next]
[
Thread Index]
[
Date Index]
[
Author Index]