event-widget: add ::clone API

This commit is contained in:
Erick Pérez Castellanos
2014-12-16 10:06:08 -05:00
parent cb7d45e184
commit 60946551b3
2 changed files with 29 additions and 0 deletions
+25
View File
@@ -834,6 +834,22 @@ gcal_event_widget_new_with_summary_and_color (const gchar *summary,
NULL);
}
GtkWidget*
gcal_event_widget_clone (GcalEventWidget *widget)
{
GtkWidget *new_widget;
GcalEventData *data;
data = gcal_event_widget_get_data (widget);
g_object_ref (data->event_component);
new_widget = gcal_event_widget_new_from_data (data);
g_free (data);
gcal_event_widget_set_read_only(GCAL_EVENT_WIDGET (new_widget), gcal_event_widget_get_read_only (widget));
return new_widget;
}
const gchar*
gcal_event_widget_peek_uuid (GcalEventWidget *event)
{
@@ -854,6 +870,15 @@ gcal_event_widget_set_read_only (GcalEventWidget *event,
priv->read_only = read_only;
}
gboolean
gcal_event_widget_get_read_only (GcalEventWidget *event)
{
GcalEventWidgetPrivate *priv;
priv = gcal_event_widget_get_instance_private (event);
return priv->read_only;
}
/**
* gcal_event_widget_set_date:
* @event: a #GcalEventWidget
+4
View File
@@ -61,11 +61,15 @@ GtkWidget* gcal_event_widget_new_from_data (GcalEventData *
GtkWidget* gcal_event_widget_new_with_summary_and_color (const gchar *summary,
const GdkRGBA *color);
GtkWidget* gcal_event_widget_clone (GcalEventWidget *widget);
const gchar* gcal_event_widget_peek_uuid (GcalEventWidget *event);
void gcal_event_widget_set_read_only (GcalEventWidget *event,
gboolean read_only);
gboolean gcal_event_widget_get_read_only (GcalEventWidget *event);
void gcal_event_widget_set_date (GcalEventWidget *event,
const icaltimetype *date);