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); 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* const gchar*
gcal_event_widget_peek_uuid (GcalEventWidget *event) gcal_event_widget_peek_uuid (GcalEventWidget *event)
{ {
@@ -854,6 +870,15 @@ gcal_event_widget_set_read_only (GcalEventWidget *event,
priv->read_only = read_only; 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: * gcal_event_widget_set_date:
* @event: a #GcalEventWidget * @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, GtkWidget* gcal_event_widget_new_with_summary_and_color (const gchar *summary,
const GdkRGBA *color); const GdkRGBA *color);
GtkWidget* gcal_event_widget_clone (GcalEventWidget *widget);
const gchar* gcal_event_widget_peek_uuid (GcalEventWidget *event); const gchar* gcal_event_widget_peek_uuid (GcalEventWidget *event);
void gcal_event_widget_set_read_only (GcalEventWidget *event, void gcal_event_widget_set_read_only (GcalEventWidget *event,
gboolean read_only); gboolean read_only);
gboolean gcal_event_widget_get_read_only (GcalEventWidget *event);
void gcal_event_widget_set_date (GcalEventWidget *event, void gcal_event_widget_set_date (GcalEventWidget *event,
const icaltimetype *date); const icaltimetype *date);