event-widget: add method to test equality
This commit is contained in:
@@ -912,3 +912,41 @@ gcal_event_widget_get_data (GcalEventWidget *event)
|
||||
|
||||
return data;
|
||||
}
|
||||
|
||||
/**
|
||||
* gcal_event_widget_equal:
|
||||
* @widget1: an #GcalEventWidget representing an event
|
||||
* @widget2: an #GcalEventWidget representing an event
|
||||
*
|
||||
* Check if two widget represent the same event.
|
||||
*
|
||||
* Returns: %TRUE if both widget represent the same event,
|
||||
* false otherwise
|
||||
**/
|
||||
gboolean
|
||||
gcal_event_widget_equal (GcalEventWidget *widget1,
|
||||
GcalEventWidget *widget2)
|
||||
{
|
||||
GcalEventWidgetPrivate *priv1;
|
||||
GcalEventWidgetPrivate *priv2;
|
||||
|
||||
ECalComponentId *id1;
|
||||
ECalComponentId *id2;
|
||||
|
||||
gboolean same_id = FALSE;
|
||||
|
||||
priv1 = gcal_event_widget_get_instance_private (widget1);
|
||||
priv2 = gcal_event_widget_get_instance_private (widget2);
|
||||
|
||||
if (!e_source_equal (priv1->source, priv2->source))
|
||||
return FALSE;
|
||||
|
||||
id1 = e_cal_component_get_id (priv1->component);
|
||||
id2 = e_cal_component_get_id (priv2->component);
|
||||
same_id = e_cal_component_id_equal (id1, id2);
|
||||
|
||||
e_cal_component_free_id (id1);
|
||||
e_cal_component_free_id (id2);
|
||||
|
||||
return same_id;
|
||||
}
|
||||
|
||||
@@ -95,6 +95,9 @@ gboolean gcal_event_widget_get_has_reminders (GcalEventWidget *
|
||||
|
||||
GcalEventData* gcal_event_widget_get_data (GcalEventWidget *event);
|
||||
|
||||
gboolean gcal_event_widget_equal (GcalEventWidget *widget1,
|
||||
GcalEventWidget *widget2);
|
||||
|
||||
G_END_DECLS
|
||||
|
||||
#endif /* __GCAL_EVENT_WIDGET_H__ */
|
||||
|
||||
Reference in New Issue
Block a user