year-view: makes a descendant of GcalSubscriber

This commit is contained in:
Erick Pérez Castellanos
2014-12-04 17:10:46 -05:00
parent aca1b66743
commit c7e27c7ef4
2 changed files with 33 additions and 12 deletions
+24 -3
View File
@@ -25,8 +25,6 @@
#include <glib/gi18n.h> #include <glib/gi18n.h>
#include <libecal/libecal.h>
typedef struct typedef struct
{ {
/** /**
@@ -138,7 +136,7 @@ static gboolean gcal_year_view_will_add_event (GcalView
G_DEFINE_TYPE_WITH_CODE (GcalYearView, G_DEFINE_TYPE_WITH_CODE (GcalYearView,
gcal_year_view, gcal_year_view,
GTK_TYPE_CONTAINER, GCAL_TYPE_SUBSCRIBER,
G_ADD_PRIVATE (GcalYearView) G_ADD_PRIVATE (GcalYearView)
G_IMPLEMENT_INTERFACE (GCAL_TYPE_VIEW, G_IMPLEMENT_INTERFACE (GCAL_TYPE_VIEW,
gcal_view_interface_init)); gcal_view_interface_init));
@@ -234,14 +232,37 @@ gcal_year_view_set_property (GObject *object,
switch (property_id) switch (property_id)
{ {
case PROP_DATE: case PROP_DATE:
{
time_t range_start, range_end;
icaltimetype *date;
icaltimezone* default_zone;
if (priv->date != NULL) if (priv->date != NULL)
g_free (priv->date); g_free (priv->date);
priv->date = g_value_dup_boxed (value); priv->date = g_value_dup_boxed (value);
default_zone =
gcal_manager_get_system_timezone (priv->manager);
date = gcal_view_get_initial_date (GCAL_VIEW (object));
range_start = icaltime_as_timet_with_zone (*date,
default_zone);
g_free (date);
date = gcal_view_get_final_date (GCAL_VIEW (object));
range_end = icaltime_as_timet_with_zone (*date,
default_zone);
g_free (date);
gcal_manager_set_subscriber (priv->manager,
E_CAL_DATA_MODEL_SUBSCRIBER (object),
range_start,
range_end);
break; break;
}
case PROP_MANAGER: case PROP_MANAGER:
{
priv->manager = g_value_get_pointer (value); priv->manager = g_value_get_pointer (value);
break; break;
}
default: default:
G_OBJECT_WARN_INVALID_PROPERTY_ID (object, property_id, pspec); G_OBJECT_WARN_INVALID_PROPERTY_ID (object, property_id, pspec);
break; break;
+3 -3
View File
@@ -22,7 +22,7 @@
#include "gcal-manager.h" #include "gcal-manager.h"
#include <gtk/gtk.h> #include "gcal-subscriber.h"
G_BEGIN_DECLS G_BEGIN_DECLS
@@ -38,12 +38,12 @@ typedef struct _GcalYearViewClass GcalYearViewClass;
struct _GcalYearView struct _GcalYearView
{ {
GtkContainer parent; GcalSubscriber parent;
}; };
struct _GcalYearViewClass struct _GcalYearViewClass
{ {
GtkContainerClass parent_class; GcalSubscriberClass parent_class;
/* signals */ /* signals */
void (*new_event) (gint new_day); void (*new_event) (gint new_day);