/* Event.c generated by valac 0.40.4, the Vala compiler * generated from Event.vala, do not modify */ /* Copyright 2016 Software Freedom Conservancy Inc. * * This software is licensed under the GNU LGPL (version 2.1 or later). * See the COPYING file in this distribution. */ #include #include #include #include #include #include #include #include #include #define TYPE_DATA_COLLECTION (data_collection_get_type ()) #define DATA_COLLECTION(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), TYPE_DATA_COLLECTION, DataCollection)) #define DATA_COLLECTION_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), TYPE_DATA_COLLECTION, DataCollectionClass)) #define IS_DATA_COLLECTION(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), TYPE_DATA_COLLECTION)) #define IS_DATA_COLLECTION_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), TYPE_DATA_COLLECTION)) #define DATA_COLLECTION_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), TYPE_DATA_COLLECTION, DataCollectionClass)) typedef struct _DataCollection DataCollection; typedef struct _DataCollectionClass DataCollectionClass; typedef struct _DataCollectionPrivate DataCollectionPrivate; #define TYPE_DATA_OBJECT (data_object_get_type ()) #define DATA_OBJECT(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), TYPE_DATA_OBJECT, DataObject)) #define DATA_OBJECT_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), TYPE_DATA_OBJECT, DataObjectClass)) #define IS_DATA_OBJECT(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), TYPE_DATA_OBJECT)) #define IS_DATA_OBJECT_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), TYPE_DATA_OBJECT)) #define DATA_OBJECT_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), TYPE_DATA_OBJECT, DataObjectClass)) typedef struct _DataObject DataObject; typedef struct _DataObjectClass DataObjectClass; #define TYPE_ALTERATION (alteration_get_type ()) #define ALTERATION(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), TYPE_ALTERATION, Alteration)) #define ALTERATION_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), TYPE_ALTERATION, AlterationClass)) #define IS_ALTERATION(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), TYPE_ALTERATION)) #define IS_ALTERATION_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), TYPE_ALTERATION)) #define ALTERATION_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), TYPE_ALTERATION, AlterationClass)) typedef struct _Alteration Alteration; typedef struct _AlterationClass AlterationClass; #define TYPE_MARKER (marker_get_type ()) #define MARKER(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), TYPE_MARKER, Marker)) #define IS_MARKER(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), TYPE_MARKER)) #define MARKER_GET_INTERFACE(obj) (G_TYPE_INSTANCE_GET_INTERFACE ((obj), TYPE_MARKER, MarkerIface)) typedef struct _Marker Marker; typedef struct _MarkerIface MarkerIface; #define TYPE_SOURCE_COLLECTION (source_collection_get_type ()) #define SOURCE_COLLECTION(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), TYPE_SOURCE_COLLECTION, SourceCollection)) #define SOURCE_COLLECTION_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), TYPE_SOURCE_COLLECTION, SourceCollectionClass)) #define IS_SOURCE_COLLECTION(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), TYPE_SOURCE_COLLECTION)) #define IS_SOURCE_COLLECTION_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), TYPE_SOURCE_COLLECTION)) #define SOURCE_COLLECTION_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), TYPE_SOURCE_COLLECTION, SourceCollectionClass)) typedef struct _SourceCollection SourceCollection; typedef struct _SourceCollectionClass SourceCollectionClass; typedef struct _SourceCollectionPrivate SourceCollectionPrivate; #define TYPE_DATA_SOURCE (data_source_get_type ()) #define DATA_SOURCE(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), TYPE_DATA_SOURCE, DataSource)) #define DATA_SOURCE_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), TYPE_DATA_SOURCE, DataSourceClass)) #define IS_DATA_SOURCE(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), TYPE_DATA_SOURCE)) #define IS_DATA_SOURCE_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), TYPE_DATA_SOURCE)) #define DATA_SOURCE_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), TYPE_DATA_SOURCE, DataSourceClass)) typedef struct _DataSource DataSource; typedef struct _DataSourceClass DataSourceClass; #define TYPE_SOURCE_BACKLINK (source_backlink_get_type ()) #define SOURCE_BACKLINK(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), TYPE_SOURCE_BACKLINK, SourceBacklink)) #define SOURCE_BACKLINK_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), TYPE_SOURCE_BACKLINK, SourceBacklinkClass)) #define IS_SOURCE_BACKLINK(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), TYPE_SOURCE_BACKLINK)) #define IS_SOURCE_BACKLINK_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), TYPE_SOURCE_BACKLINK)) #define SOURCE_BACKLINK_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), TYPE_SOURCE_BACKLINK, SourceBacklinkClass)) typedef struct _SourceBacklink SourceBacklink; typedef struct _SourceBacklinkClass SourceBacklinkClass; #define TYPE_DATABASE_SOURCE_COLLECTION (database_source_collection_get_type ()) #define DATABASE_SOURCE_COLLECTION(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), TYPE_DATABASE_SOURCE_COLLECTION, DatabaseSourceCollection)) #define DATABASE_SOURCE_COLLECTION_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), TYPE_DATABASE_SOURCE_COLLECTION, DatabaseSourceCollectionClass)) #define IS_DATABASE_SOURCE_COLLECTION(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), TYPE_DATABASE_SOURCE_COLLECTION)) #define IS_DATABASE_SOURCE_COLLECTION_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), TYPE_DATABASE_SOURCE_COLLECTION)) #define DATABASE_SOURCE_COLLECTION_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), TYPE_DATABASE_SOURCE_COLLECTION, DatabaseSourceCollectionClass)) typedef struct _DatabaseSourceCollection DatabaseSourceCollection; typedef struct _DatabaseSourceCollectionClass DatabaseSourceCollectionClass; typedef struct _DatabaseSourceCollectionPrivate DatabaseSourceCollectionPrivate; #define TYPE_CONTAINER_SOURCE_COLLECTION (container_source_collection_get_type ()) #define CONTAINER_SOURCE_COLLECTION(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), TYPE_CONTAINER_SOURCE_COLLECTION, ContainerSourceCollection)) #define CONTAINER_SOURCE_COLLECTION_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), TYPE_CONTAINER_SOURCE_COLLECTION, ContainerSourceCollectionClass)) #define IS_CONTAINER_SOURCE_COLLECTION(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), TYPE_CONTAINER_SOURCE_COLLECTION)) #define IS_CONTAINER_SOURCE_COLLECTION_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), TYPE_CONTAINER_SOURCE_COLLECTION)) #define CONTAINER_SOURCE_COLLECTION_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), TYPE_CONTAINER_SOURCE_COLLECTION, ContainerSourceCollectionClass)) typedef struct _ContainerSourceCollection ContainerSourceCollection; typedef struct _ContainerSourceCollectionClass ContainerSourceCollectionClass; typedef struct _ContainerSourceCollectionPrivate ContainerSourceCollectionPrivate; #define TYPE_CONTAINER_SOURCE (container_source_get_type ()) #define CONTAINER_SOURCE(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), TYPE_CONTAINER_SOURCE, ContainerSource)) #define IS_CONTAINER_SOURCE(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), TYPE_CONTAINER_SOURCE)) #define CONTAINER_SOURCE_GET_INTERFACE(obj) (G_TYPE_INSTANCE_GET_INTERFACE ((obj), TYPE_CONTAINER_SOURCE, ContainerSourceIface)) typedef struct _ContainerSource ContainerSource; typedef struct _ContainerSourceIface ContainerSourceIface; #define TYPE_EVENT_SOURCE_COLLECTION (event_source_collection_get_type ()) #define EVENT_SOURCE_COLLECTION(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), TYPE_EVENT_SOURCE_COLLECTION, EventSourceCollection)) #define EVENT_SOURCE_COLLECTION_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), TYPE_EVENT_SOURCE_COLLECTION, EventSourceCollectionClass)) #define IS_EVENT_SOURCE_COLLECTION(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), TYPE_EVENT_SOURCE_COLLECTION)) #define IS_EVENT_SOURCE_COLLECTION_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), TYPE_EVENT_SOURCE_COLLECTION)) #define EVENT_SOURCE_COLLECTION_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), TYPE_EVENT_SOURCE_COLLECTION, EventSourceCollectionClass)) typedef struct _EventSourceCollection EventSourceCollection; typedef struct _EventSourceCollectionClass EventSourceCollectionClass; typedef struct _EventSourceCollectionPrivate EventSourceCollectionPrivate; #define TYPE_VIEW_COLLECTION (view_collection_get_type ()) #define VIEW_COLLECTION(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), TYPE_VIEW_COLLECTION, ViewCollection)) #define VIEW_COLLECTION_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), TYPE_VIEW_COLLECTION, ViewCollectionClass)) #define IS_VIEW_COLLECTION(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), TYPE_VIEW_COLLECTION)) #define IS_VIEW_COLLECTION_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), TYPE_VIEW_COLLECTION)) #define VIEW_COLLECTION_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), TYPE_VIEW_COLLECTION, ViewCollectionClass)) typedef struct _ViewCollection ViewCollection; typedef struct _ViewCollectionClass ViewCollectionClass; #define _data_collection_unref0(var) ((var == NULL) ? NULL : (var = (data_collection_unref (var), NULL))) #define TYPE_MEDIA_SOURCE_COLLECTION (media_source_collection_get_type ()) #define MEDIA_SOURCE_COLLECTION(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), TYPE_MEDIA_SOURCE_COLLECTION, MediaSourceCollection)) #define MEDIA_SOURCE_COLLECTION_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), TYPE_MEDIA_SOURCE_COLLECTION, MediaSourceCollectionClass)) #define IS_MEDIA_SOURCE_COLLECTION(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), TYPE_MEDIA_SOURCE_COLLECTION)) #define IS_MEDIA_SOURCE_COLLECTION_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), TYPE_MEDIA_SOURCE_COLLECTION)) #define MEDIA_SOURCE_COLLECTION_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), TYPE_MEDIA_SOURCE_COLLECTION, MediaSourceCollectionClass)) typedef struct _MediaSourceCollection MediaSourceCollection; typedef struct _MediaSourceCollectionClass MediaSourceCollectionClass; #define TYPE_LIBRARY_PHOTO_SOURCE_COLLECTION (library_photo_source_collection_get_type ()) #define LIBRARY_PHOTO_SOURCE_COLLECTION(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), TYPE_LIBRARY_PHOTO_SOURCE_COLLECTION, LibraryPhotoSourceCollection)) #define LIBRARY_PHOTO_SOURCE_COLLECTION_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), TYPE_LIBRARY_PHOTO_SOURCE_COLLECTION, LibraryPhotoSourceCollectionClass)) #define IS_LIBRARY_PHOTO_SOURCE_COLLECTION(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), TYPE_LIBRARY_PHOTO_SOURCE_COLLECTION)) #define IS_LIBRARY_PHOTO_SOURCE_COLLECTION_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), TYPE_LIBRARY_PHOTO_SOURCE_COLLECTION)) #define LIBRARY_PHOTO_SOURCE_COLLECTION_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), TYPE_LIBRARY_PHOTO_SOURCE_COLLECTION, LibraryPhotoSourceCollectionClass)) typedef struct _LibraryPhotoSourceCollection LibraryPhotoSourceCollection; typedef struct _LibraryPhotoSourceCollectionClass LibraryPhotoSourceCollectionClass; #define TYPE_VIDEO_SOURCE_COLLECTION (video_source_collection_get_type ()) #define VIDEO_SOURCE_COLLECTION(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), TYPE_VIDEO_SOURCE_COLLECTION, VideoSourceCollection)) #define VIDEO_SOURCE_COLLECTION_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), TYPE_VIDEO_SOURCE_COLLECTION, VideoSourceCollectionClass)) #define IS_VIDEO_SOURCE_COLLECTION(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), TYPE_VIDEO_SOURCE_COLLECTION)) #define IS_VIDEO_SOURCE_COLLECTION_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), TYPE_VIDEO_SOURCE_COLLECTION)) #define VIDEO_SOURCE_COLLECTION_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), TYPE_VIDEO_SOURCE_COLLECTION, VideoSourceCollectionClass)) typedef struct _VideoSourceCollection VideoSourceCollection; typedef struct _VideoSourceCollectionClass VideoSourceCollectionClass; #define TYPE_VIEW_MANAGER (view_manager_get_type ()) #define VIEW_MANAGER(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), TYPE_VIEW_MANAGER, ViewManager)) #define VIEW_MANAGER_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), TYPE_VIEW_MANAGER, ViewManagerClass)) #define IS_VIEW_MANAGER(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), TYPE_VIEW_MANAGER)) #define IS_VIEW_MANAGER_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), TYPE_VIEW_MANAGER)) #define VIEW_MANAGER_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), TYPE_VIEW_MANAGER, ViewManagerClass)) typedef struct _ViewManager ViewManager; typedef struct _ViewManagerClass ViewManagerClass; #define EVENT_SOURCE_COLLECTION_TYPE_NO_EVENT_VIEW_MANAGER (event_source_collection_no_event_view_manager_get_type ()) #define EVENT_SOURCE_COLLECTION_NO_EVENT_VIEW_MANAGER(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), EVENT_SOURCE_COLLECTION_TYPE_NO_EVENT_VIEW_MANAGER, EventSourceCollectionNoEventViewManager)) #define EVENT_SOURCE_COLLECTION_NO_EVENT_VIEW_MANAGER_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), EVENT_SOURCE_COLLECTION_TYPE_NO_EVENT_VIEW_MANAGER, EventSourceCollectionNoEventViewManagerClass)) #define EVENT_SOURCE_COLLECTION_IS_NO_EVENT_VIEW_MANAGER(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), EVENT_SOURCE_COLLECTION_TYPE_NO_EVENT_VIEW_MANAGER)) #define EVENT_SOURCE_COLLECTION_IS_NO_EVENT_VIEW_MANAGER_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), EVENT_SOURCE_COLLECTION_TYPE_NO_EVENT_VIEW_MANAGER)) #define EVENT_SOURCE_COLLECTION_NO_EVENT_VIEW_MANAGER_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), EVENT_SOURCE_COLLECTION_TYPE_NO_EVENT_VIEW_MANAGER, EventSourceCollectionNoEventViewManagerClass)) typedef struct _EventSourceCollectionNoEventViewManager EventSourceCollectionNoEventViewManager; typedef struct _EventSourceCollectionNoEventViewManagerClass EventSourceCollectionNoEventViewManagerClass; #define VIEW_COLLECTION_TYPE_MONITOR (view_collection_monitor_get_type ()) #define VIEW_COLLECTION_MONITOR(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), VIEW_COLLECTION_TYPE_MONITOR, ViewCollectionMonitor)) #define VIEW_COLLECTION_MONITOR_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), VIEW_COLLECTION_TYPE_MONITOR, ViewCollectionMonitorClass)) #define VIEW_COLLECTION_IS_MONITOR(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), VIEW_COLLECTION_TYPE_MONITOR)) #define VIEW_COLLECTION_IS_MONITOR_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), VIEW_COLLECTION_TYPE_MONITOR)) #define VIEW_COLLECTION_MONITOR_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), VIEW_COLLECTION_TYPE_MONITOR, ViewCollectionMonitorClass)) typedef struct _ViewCollectionMonitor ViewCollectionMonitor; typedef struct _ViewCollectionMonitorClass ViewCollectionMonitorClass; #define _view_collection_monitor_unref0(var) ((var == NULL) ? NULL : (var = (view_collection_monitor_unref (var), NULL))) #define _alteration_unref0(var) ((var == NULL) ? NULL : (var = (alteration_unref (var), NULL))) #define _view_manager_unref0(var) ((var == NULL) ? NULL : (var = (view_manager_unref (var), NULL))) #define TYPE_THUMBNAIL_SOURCE (thumbnail_source_get_type ()) #define THUMBNAIL_SOURCE(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), TYPE_THUMBNAIL_SOURCE, ThumbnailSource)) #define THUMBNAIL_SOURCE_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), TYPE_THUMBNAIL_SOURCE, ThumbnailSourceClass)) #define IS_THUMBNAIL_SOURCE(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), TYPE_THUMBNAIL_SOURCE)) #define IS_THUMBNAIL_SOURCE_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), TYPE_THUMBNAIL_SOURCE)) #define THUMBNAIL_SOURCE_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), TYPE_THUMBNAIL_SOURCE, ThumbnailSourceClass)) typedef struct _ThumbnailSource ThumbnailSource; typedef struct _ThumbnailSourceClass ThumbnailSourceClass; #define TYPE_EVENT_SOURCE (event_source_get_type ()) #define EVENT_SOURCE(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), TYPE_EVENT_SOURCE, EventSource)) #define EVENT_SOURCE_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), TYPE_EVENT_SOURCE, EventSourceClass)) #define IS_EVENT_SOURCE(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), TYPE_EVENT_SOURCE)) #define IS_EVENT_SOURCE_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), TYPE_EVENT_SOURCE)) #define EVENT_SOURCE_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), TYPE_EVENT_SOURCE, EventSourceClass)) typedef struct _EventSource EventSource; typedef struct _EventSourceClass EventSourceClass; #define TYPE_EVENT (event_get_type ()) #define EVENT(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), TYPE_EVENT, Event)) #define EVENT_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), TYPE_EVENT, EventClass)) #define IS_EVENT(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), TYPE_EVENT)) #define IS_EVENT_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), TYPE_EVENT)) #define EVENT_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), TYPE_EVENT, EventClass)) typedef struct _Event Event; typedef struct _EventClass EventClass; #define TYPE_EVENT_ID (event_id_get_type ()) typedef struct _EventID EventID; #define _g_object_unref0(var) ((var == NULL) ? NULL : (var = (g_object_unref (var), NULL))) #define TYPE_MEDIA_SOURCE (media_source_get_type ()) #define MEDIA_SOURCE(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), TYPE_MEDIA_SOURCE, MediaSource)) #define MEDIA_SOURCE_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), TYPE_MEDIA_SOURCE, MediaSourceClass)) #define IS_MEDIA_SOURCE(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), TYPE_MEDIA_SOURCE)) #define IS_MEDIA_SOURCE_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), TYPE_MEDIA_SOURCE)) #define MEDIA_SOURCE_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), TYPE_MEDIA_SOURCE, MediaSourceClass)) typedef struct _MediaSource MediaSource; typedef struct _MediaSourceClass MediaSourceClass; typedef struct _ViewManagerPrivate ViewManagerPrivate; #define TYPE_DATA_VIEW (data_view_get_type ()) #define DATA_VIEW(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), TYPE_DATA_VIEW, DataView)) #define DATA_VIEW_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), TYPE_DATA_VIEW, DataViewClass)) #define IS_DATA_VIEW(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), TYPE_DATA_VIEW)) #define IS_DATA_VIEW_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), TYPE_DATA_VIEW)) #define DATA_VIEW_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), TYPE_DATA_VIEW, DataViewClass)) typedef struct _DataView DataView; typedef struct _DataViewClass DataViewClass; typedef struct _EventSourceCollectionNoEventViewManagerPrivate EventSourceCollectionNoEventViewManagerPrivate; #define TYPE_THUMBNAIL_VIEW (thumbnail_view_get_type ()) #define THUMBNAIL_VIEW(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), TYPE_THUMBNAIL_VIEW, ThumbnailView)) #define THUMBNAIL_VIEW_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), TYPE_THUMBNAIL_VIEW, ThumbnailViewClass)) #define IS_THUMBNAIL_VIEW(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), TYPE_THUMBNAIL_VIEW)) #define IS_THUMBNAIL_VIEW_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), TYPE_THUMBNAIL_VIEW)) #define THUMBNAIL_VIEW_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), TYPE_THUMBNAIL_VIEW, ThumbnailViewClass)) typedef struct _ThumbnailView ThumbnailView; typedef struct _ThumbnailViewClass ThumbnailViewClass; enum { EVENT_SOURCE_COLLECTION_NO_EVENT_COLLECTION_ALTERED_SIGNAL, EVENT_SOURCE_COLLECTION_NUM_SIGNALS }; static guint event_source_collection_signals[EVENT_SOURCE_COLLECTION_NUM_SIGNALS] = {0}; typedef struct _DataObjectPrivate DataObjectPrivate; typedef struct _DataSourcePrivate DataSourcePrivate; #define TYPE_SOURCE_HOLDING_TANK (source_holding_tank_get_type ()) #define SOURCE_HOLDING_TANK(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), TYPE_SOURCE_HOLDING_TANK, SourceHoldingTank)) #define SOURCE_HOLDING_TANK_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), TYPE_SOURCE_HOLDING_TANK, SourceHoldingTankClass)) #define IS_SOURCE_HOLDING_TANK(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), TYPE_SOURCE_HOLDING_TANK)) #define IS_SOURCE_HOLDING_TANK_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), TYPE_SOURCE_HOLDING_TANK)) #define SOURCE_HOLDING_TANK_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), TYPE_SOURCE_HOLDING_TANK, SourceHoldingTankClass)) typedef struct _SourceHoldingTank SourceHoldingTank; typedef struct _SourceHoldingTankClass SourceHoldingTankClass; #define TYPE_SOURCE_SNAPSHOT (source_snapshot_get_type ()) #define SOURCE_SNAPSHOT(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), TYPE_SOURCE_SNAPSHOT, SourceSnapshot)) #define SOURCE_SNAPSHOT_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), TYPE_SOURCE_SNAPSHOT, SourceSnapshotClass)) #define IS_SOURCE_SNAPSHOT(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), TYPE_SOURCE_SNAPSHOT)) #define IS_SOURCE_SNAPSHOT_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), TYPE_SOURCE_SNAPSHOT)) #define SOURCE_SNAPSHOT_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), TYPE_SOURCE_SNAPSHOT, SourceSnapshotClass)) typedef struct _SourceSnapshot SourceSnapshot; typedef struct _SourceSnapshotClass SourceSnapshotClass; typedef struct _ThumbnailSourcePrivate ThumbnailSourcePrivate; #define TYPE_PHOTO_FILE_FORMAT (photo_file_format_get_type ()) typedef struct _EventSourcePrivate EventSourcePrivate; #define TYPE_PROXYABLE (proxyable_get_type ()) #define PROXYABLE(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), TYPE_PROXYABLE, Proxyable)) #define IS_PROXYABLE(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), TYPE_PROXYABLE)) #define PROXYABLE_GET_INTERFACE(obj) (G_TYPE_INSTANCE_GET_INTERFACE ((obj), TYPE_PROXYABLE, ProxyableIface)) typedef struct _Proxyable Proxyable; typedef struct _ProxyableIface ProxyableIface; #define TYPE_SOURCE_PROXY (source_proxy_get_type ()) #define SOURCE_PROXY(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), TYPE_SOURCE_PROXY, SourceProxy)) #define SOURCE_PROXY_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), TYPE_SOURCE_PROXY, SourceProxyClass)) #define IS_SOURCE_PROXY(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), TYPE_SOURCE_PROXY)) #define IS_SOURCE_PROXY_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), TYPE_SOURCE_PROXY)) #define SOURCE_PROXY_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), TYPE_SOURCE_PROXY, SourceProxyClass)) typedef struct _SourceProxy SourceProxy; typedef struct _SourceProxyClass SourceProxyClass; #define TYPE_INDEXABLE (indexable_get_type ()) #define INDEXABLE(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), TYPE_INDEXABLE, Indexable)) #define IS_INDEXABLE(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), TYPE_INDEXABLE)) #define INDEXABLE_GET_INTERFACE(obj) (G_TYPE_INSTANCE_GET_INTERFACE ((obj), TYPE_INDEXABLE, IndexableIface)) typedef struct _Indexable Indexable; typedef struct _IndexableIface IndexableIface; typedef struct _EventPrivate EventPrivate; enum { EVENT_0_PROPERTY, EVENT_NUM_PROPERTIES }; static GParamSpec* event_properties[EVENT_NUM_PROPERTIES]; #define TYPE_DATABASE_TABLE (database_table_get_type ()) #define DATABASE_TABLE(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), TYPE_DATABASE_TABLE, DatabaseTable)) #define DATABASE_TABLE_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), TYPE_DATABASE_TABLE, DatabaseTableClass)) #define IS_DATABASE_TABLE(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), TYPE_DATABASE_TABLE)) #define IS_DATABASE_TABLE_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), TYPE_DATABASE_TABLE)) #define DATABASE_TABLE_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), TYPE_DATABASE_TABLE, DatabaseTableClass)) typedef struct _DatabaseTable DatabaseTable; typedef struct _DatabaseTableClass DatabaseTableClass; #define TYPE_EVENT_TABLE (event_table_get_type ()) #define EVENT_TABLE(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), TYPE_EVENT_TABLE, EventTable)) #define EVENT_TABLE_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), TYPE_EVENT_TABLE, EventTableClass)) #define IS_EVENT_TABLE(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), TYPE_EVENT_TABLE)) #define IS_EVENT_TABLE_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), TYPE_EVENT_TABLE)) #define EVENT_TABLE_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), TYPE_EVENT_TABLE, EventTableClass)) typedef struct _EventTable EventTable; typedef struct _EventTableClass EventTableClass; #define _g_free0(var) (var = (g_free (var), NULL)) #define TYPE_EVENT_ROW (event_row_get_type ()) #define EVENT_ROW(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), TYPE_EVENT_ROW, EventRow)) #define EVENT_ROW_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), TYPE_EVENT_ROW, EventRowClass)) #define IS_EVENT_ROW(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), TYPE_EVENT_ROW)) #define IS_EVENT_ROW_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), TYPE_EVENT_ROW)) #define EVENT_ROW_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), TYPE_EVENT_ROW, EventRowClass)) typedef struct _EventRow EventRow; typedef struct _EventRowClass EventRowClass; typedef struct _EventRowPrivate EventRowPrivate; #define TYPE_MEDIA_COLLECTION_REGISTRY (media_collection_registry_get_type ()) #define MEDIA_COLLECTION_REGISTRY(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), TYPE_MEDIA_COLLECTION_REGISTRY, MediaCollectionRegistry)) #define MEDIA_COLLECTION_REGISTRY_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), TYPE_MEDIA_COLLECTION_REGISTRY, MediaCollectionRegistryClass)) #define IS_MEDIA_COLLECTION_REGISTRY(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), TYPE_MEDIA_COLLECTION_REGISTRY)) #define IS_MEDIA_COLLECTION_REGISTRY_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), TYPE_MEDIA_COLLECTION_REGISTRY)) #define MEDIA_COLLECTION_REGISTRY_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), TYPE_MEDIA_COLLECTION_REGISTRY, MediaCollectionRegistryClass)) typedef struct _MediaCollectionRegistry MediaCollectionRegistry; typedef struct _MediaCollectionRegistryClass MediaCollectionRegistryClass; #define _media_collection_registry_unref0(var) ((var == NULL) ? NULL : (var = (media_collection_registry_unref (var), NULL))) #define _database_table_unref0(var) ((var == NULL) ? NULL : (var = (database_table_unref (var), NULL))) #define _event_row_unref0(var) ((var == NULL) ? NULL : (var = (event_row_unref (var), NULL))) #define TYPE_PREPARE_INPUT_TEXT_OPTIONS (prepare_input_text_options_get_type ()) #define TYPE_RATING (rating_get_type ()) #define _g_error_free0(var) ((var == NULL) ? NULL : (var = (g_error_free (var), NULL))) #define _source_backlink_unref0(var) ((var == NULL) ? NULL : (var = (source_backlink_unref (var), NULL))) #define TYPE_PHOTO_SOURCE (photo_source_get_type ()) #define PHOTO_SOURCE(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), TYPE_PHOTO_SOURCE, PhotoSource)) #define PHOTO_SOURCE_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), TYPE_PHOTO_SOURCE, PhotoSourceClass)) #define IS_PHOTO_SOURCE(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), TYPE_PHOTO_SOURCE)) #define IS_PHOTO_SOURCE_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), TYPE_PHOTO_SOURCE)) #define PHOTO_SOURCE_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), TYPE_PHOTO_SOURCE, PhotoSourceClass)) typedef struct _PhotoSource PhotoSource; typedef struct _PhotoSourceClass PhotoSourceClass; #define TYPE_PHOTO (photo_get_type ()) #define PHOTO(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), TYPE_PHOTO, Photo)) #define PHOTO_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), TYPE_PHOTO, PhotoClass)) #define IS_PHOTO(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), TYPE_PHOTO)) #define IS_PHOTO_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), TYPE_PHOTO)) #define PHOTO_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), TYPE_PHOTO, PhotoClass)) typedef struct _Photo Photo; typedef struct _PhotoClass PhotoClass; #define TYPE_LIBRARY_PHOTO (library_photo_get_type ()) #define LIBRARY_PHOTO(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), TYPE_LIBRARY_PHOTO, LibraryPhoto)) #define LIBRARY_PHOTO_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), TYPE_LIBRARY_PHOTO, LibraryPhotoClass)) #define IS_LIBRARY_PHOTO(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), TYPE_LIBRARY_PHOTO)) #define IS_LIBRARY_PHOTO_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), TYPE_LIBRARY_PHOTO)) #define LIBRARY_PHOTO_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), TYPE_LIBRARY_PHOTO, LibraryPhotoClass)) typedef struct _LibraryPhoto LibraryPhoto; typedef struct _LibraryPhotoClass LibraryPhotoClass; #define TYPE_VIDEO_SOURCE (video_source_get_type ()) #define VIDEO_SOURCE(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), TYPE_VIDEO_SOURCE, VideoSource)) #define VIDEO_SOURCE_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), TYPE_VIDEO_SOURCE, VideoSourceClass)) #define IS_VIDEO_SOURCE(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), TYPE_VIDEO_SOURCE)) #define IS_VIDEO_SOURCE_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), TYPE_VIDEO_SOURCE)) #define VIDEO_SOURCE_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), TYPE_VIDEO_SOURCE, VideoSourceClass)) typedef struct _VideoSource VideoSource; typedef struct _VideoSourceClass VideoSourceClass; #define TYPE_VIDEO (video_get_type ()) #define VIDEO(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), TYPE_VIDEO, Video)) #define VIDEO_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), TYPE_VIDEO, VideoClass)) #define IS_VIDEO(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), TYPE_VIDEO)) #define IS_VIDEO_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), TYPE_VIDEO)) #define VIDEO_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), TYPE_VIDEO, VideoClass)) typedef struct _Video Video; typedef struct _VideoClass VideoClass; #define TYPE_TRANSACTION_CONTROLLER (transaction_controller_get_type ()) #define TRANSACTION_CONTROLLER(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), TYPE_TRANSACTION_CONTROLLER, TransactionController)) #define TRANSACTION_CONTROLLER_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), TYPE_TRANSACTION_CONTROLLER, TransactionControllerClass)) #define IS_TRANSACTION_CONTROLLER(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), TYPE_TRANSACTION_CONTROLLER)) #define IS_TRANSACTION_CONTROLLER_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), TYPE_TRANSACTION_CONTROLLER)) #define TRANSACTION_CONTROLLER_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), TYPE_TRANSACTION_CONTROLLER, TransactionControllerClass)) typedef struct _TransactionController TransactionController; typedef struct _TransactionControllerClass TransactionControllerClass; #define TYPE_EVENT_VIEW (event_view_get_type ()) #define EVENT_VIEW(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), TYPE_EVENT_VIEW, EventView)) #define EVENT_VIEW_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), TYPE_EVENT_VIEW, EventViewClass)) #define IS_EVENT_VIEW(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), TYPE_EVENT_VIEW)) #define IS_EVENT_VIEW_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), TYPE_EVENT_VIEW)) #define EVENT_VIEW_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), TYPE_EVENT_VIEW, EventViewClass)) typedef struct _EventView EventView; typedef struct _EventViewClass EventViewClass; #define EVENT_TYPE_EVENT_SNAPSHOT (event_event_snapshot_get_type ()) #define EVENT_EVENT_SNAPSHOT(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), EVENT_TYPE_EVENT_SNAPSHOT, EventEventSnapshot)) #define EVENT_EVENT_SNAPSHOT_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), EVENT_TYPE_EVENT_SNAPSHOT, EventEventSnapshotClass)) #define EVENT_IS_EVENT_SNAPSHOT(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), EVENT_TYPE_EVENT_SNAPSHOT)) #define EVENT_IS_EVENT_SNAPSHOT_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), EVENT_TYPE_EVENT_SNAPSHOT)) #define EVENT_EVENT_SNAPSHOT_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), EVENT_TYPE_EVENT_SNAPSHOT, EventEventSnapshotClass)) typedef struct _EventEventSnapshot EventEventSnapshot; typedef struct _EventEventSnapshotClass EventEventSnapshotClass; #define EVENT_TYPE_EVENT_PROXY (event_event_proxy_get_type ()) #define EVENT_EVENT_PROXY(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), EVENT_TYPE_EVENT_PROXY, EventEventProxy)) #define EVENT_EVENT_PROXY_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), EVENT_TYPE_EVENT_PROXY, EventEventProxyClass)) #define EVENT_IS_EVENT_PROXY(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), EVENT_TYPE_EVENT_PROXY)) #define EVENT_IS_EVENT_PROXY_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), EVENT_TYPE_EVENT_PROXY)) #define EVENT_EVENT_PROXY_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), EVENT_TYPE_EVENT_PROXY, EventEventProxyClass)) typedef struct _EventEventProxy EventEventProxy; typedef struct _EventEventProxyClass EventEventProxyClass; #define TYPE_SCALING (scaling_get_type ()) #define TYPE_SCALE_CONSTRAINT (scale_constraint_get_type ()) #define TYPE_DIMENSIONS (dimensions_get_type ()) typedef struct _Dimensions Dimensions; typedef struct _Scaling Scaling; #define TYPE_PHOTO_TABLE (photo_table_get_type ()) #define PHOTO_TABLE(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), TYPE_PHOTO_TABLE, PhotoTable)) #define PHOTO_TABLE_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), TYPE_PHOTO_TABLE, PhotoTableClass)) #define IS_PHOTO_TABLE(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), TYPE_PHOTO_TABLE)) #define IS_PHOTO_TABLE_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), TYPE_PHOTO_TABLE)) #define PHOTO_TABLE_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), TYPE_PHOTO_TABLE, PhotoTableClass)) typedef struct _PhotoTable PhotoTable; typedef struct _PhotoTableClass PhotoTableClass; #define TYPE_VIDEO_TABLE (video_table_get_type ()) #define VIDEO_TABLE(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), TYPE_VIDEO_TABLE, VideoTable)) #define VIDEO_TABLE_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), TYPE_VIDEO_TABLE, VideoTableClass)) #define IS_VIDEO_TABLE(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), TYPE_VIDEO_TABLE)) #define IS_VIDEO_TABLE_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), TYPE_VIDEO_TABLE)) #define VIDEO_TABLE_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), TYPE_VIDEO_TABLE, VideoTableClass)) typedef struct _VideoTable VideoTable; typedef struct _VideoTableClass VideoTableClass; typedef struct _SourceSnapshotPrivate SourceSnapshotPrivate; typedef struct _EventEventSnapshotPrivate EventEventSnapshotPrivate; typedef struct _SourceProxyPrivate SourceProxyPrivate; typedef struct _EventEventProxyPrivate EventEventProxyPrivate; #define _source_snapshot_unref0(var) ((var == NULL) ? NULL : (var = (source_snapshot_unref (var), NULL))) #define _vala_assert(expr, msg) if G_LIKELY (expr) ; else g_assertion_message_expr (G_LOG_DOMAIN, __FILE__, __LINE__, G_STRFUNC, msg); #define _vala_return_if_fail(expr, msg) if G_LIKELY (expr) ; else { g_return_if_fail_warning (G_LOG_DOMAIN, G_STRFUNC, msg); return; } #define _vala_return_val_if_fail(expr, msg, val) if G_LIKELY (expr) ; else { g_return_if_fail_warning (G_LOG_DOMAIN, G_STRFUNC, msg); return val; } #define _vala_warn_if_fail(expr, msg) if G_LIKELY (expr) ; else g_warn_message (G_LOG_DOMAIN, __FILE__, __LINE__, G_STRFUNC, msg); typedef gint64 (*Comparator) (void* a, void* b, void* user_data); typedef gboolean (*ComparatorPredicate) (DataObject* object, Alteration* alteration, void* user_data); typedef gboolean (*ProgressMonitor) (guint64 current, guint64 total, gboolean do_event_loop, void* user_data); struct _MarkerIface { GTypeInterface parent_iface; void (*mark) (Marker* self, DataObject* object); void (*unmark) (Marker* self, DataObject* object); gboolean (*toggle) (Marker* self, DataObject* object); void (*mark_many) (Marker* self, GeeCollection* list); void (*unmark_many) (Marker* self, GeeCollection* list); void (*mark_all) (Marker* self); gint (*get_count) (Marker* self); GeeCollection* (*get_all) (Marker* self); }; struct _DataCollection { GTypeInstance parent_instance; volatile int ref_count; DataCollectionPrivate * priv; }; struct _DataCollectionClass { GTypeClass parent_class; void (*finalize) (DataCollection *self); gchar* (*to_string) (DataCollection* self); void (*notify_items_added) (DataCollection* self, GeeIterable* added); void (*notify_items_removed) (DataCollection* self, GeeIterable* removed); void (*notify_contents_altered) (DataCollection* self, GeeIterable* added, GeeIterable* removed); void (*notify_items_altered) (DataCollection* self, GeeMap* items); void (*notify_ordering_changed) (DataCollection* self); void (*notify_property_set) (DataCollection* self, const gchar* name, GValue* old, GValue* val); void (*notify_property_cleared) (DataCollection* self, const gchar* name); gboolean (*valid_type) (DataCollection* self, DataObject* object); void (*set_comparator) (DataCollection* self, Comparator comparator, void* comparator_target, ComparatorPredicate predicate, void* predicate_target); void (*reset_comparator) (DataCollection* self); GeeCollection* (*get_all) (DataCollection* self); gint (*get_count) (DataCollection* self); DataObject* (*get_at) (DataCollection* self, gint index); gint (*index_of) (DataCollection* self, DataObject* object); gboolean (*contains) (DataCollection* self, DataObject* object); gboolean (*add) (DataCollection* self, DataObject* object); GeeCollection* (*add_many) (DataCollection* self, GeeCollection* objects, ProgressMonitor monitor, void* monitor_target); void (*remove_marked) (DataCollection* self, Marker* m); void (*clear) (DataCollection* self); void (*close) (DataCollection* self); void (*notify_frozen) (DataCollection* self); void (*notify_thawed) (DataCollection* self); void (*items_added) (DataCollection* self, GeeIterable* added); void (*items_removed) (DataCollection* self, GeeIterable* removed); void (*contents_altered) (DataCollection* self, GeeIterable* added, GeeIterable* removed); void (*items_altered) (DataCollection* self, GeeMap* items); void (*ordering_changed) (DataCollection* self); void (*property_set) (DataCollection* self, const gchar* name, GValue* old, GValue* val); void (*property_cleared) (DataCollection* self, const gchar* name); void (*frozen) (DataCollection* self); void (*thawed) (DataCollection* self); }; struct _SourceCollection { DataCollection parent_instance; SourceCollectionPrivate * priv; }; struct _SourceCollectionClass { DataCollectionClass parent_class; gboolean (*holds_type_of_source) (SourceCollection* self, DataSource* source); void (*notify_items_unlinking) (SourceCollection* self, GeeCollection* unlinking); void (*notify_items_relinked) (SourceCollection* self, GeeCollection* relinked); void (*notify_item_destroyed) (SourceCollection* self, DataSource* source); void (*notify_items_destroyed) (SourceCollection* self, GeeCollection* destroyed); void (*notify_unlinked_destroyed) (SourceCollection* self, DataSource* unlinked); void (*notify_backlink_removed) (SourceCollection* self, SourceBacklink* backlink, GeeCollection* sources); gboolean (*has_backlink) (SourceCollection* self, SourceBacklink* backlink); void (*remove_backlink) (SourceCollection* self, SourceBacklink* backlink); void (*items_unlinking) (SourceCollection* self, GeeCollection* unlinking); void (*items_relinked) (SourceCollection* self, GeeCollection* relinked); void (*item_destroyed) (SourceCollection* self, DataSource* source); void (*items_destroyed) (SourceCollection* self, GeeCollection* destroyed); void (*unlinked_destroyed) (SourceCollection* self, DataSource* source); void (*backlink_removed) (SourceCollection* self, SourceBacklink* backlink, GeeCollection* sources); }; struct _DatabaseSourceCollection { SourceCollection parent_instance; DatabaseSourceCollectionPrivate * priv; }; struct _DatabaseSourceCollectionClass { SourceCollectionClass parent_class; }; struct _ContainerSourceIface { GTypeInterface parent_iface; gboolean (*has_links) (ContainerSource* self); SourceBacklink* (*get_backlink) (ContainerSource* self); void (*break_link) (ContainerSource* self, DataSource* source); void (*break_link_many) (ContainerSource* self, GeeCollection* sources); void (*establish_link) (ContainerSource* self, DataSource* source); void (*establish_link_many) (ContainerSource* self, GeeCollection* sources); }; struct _ContainerSourceCollection { DatabaseSourceCollection parent_instance; ContainerSourceCollectionPrivate * priv; }; struct _ContainerSourceCollectionClass { DatabaseSourceCollectionClass parent_class; void (*notify_container_contents_added) (ContainerSourceCollection* self, ContainerSource* container, GeeCollection* added, gboolean relinked); void (*notify_container_contents_removed) (ContainerSourceCollection* self, ContainerSource* container, GeeCollection* removed, gboolean unlinked); void (*notify_container_contents_altered) (ContainerSourceCollection* self, ContainerSource* container, GeeCollection* added, gboolean relinked, GeeCollection* removed, gboolean unlinked); void (*notify_backlink_to_container_removed) (ContainerSourceCollection* self, ContainerSource* container, GeeCollection* sources); GeeCollection* (*get_containers_holding_source) (ContainerSourceCollection* self, DataSource* source); ContainerSource* (*convert_backlink_to_container) (ContainerSourceCollection* self, SourceBacklink* backlink); void (*container_contents_added) (ContainerSourceCollection* self, ContainerSource* container, GeeCollection* added, gboolean relinked); void (*container_contents_removed) (ContainerSourceCollection* self, ContainerSource* container, GeeCollection* removed, gboolean unlinked); void (*container_contents_altered) (ContainerSourceCollection* self, ContainerSource* container, GeeCollection* added, gboolean relinked, GeeCollection* removed, gboolean unlinked); void (*backlink_to_container_removed) (ContainerSourceCollection* self, ContainerSource* container, GeeCollection* sources); }; struct _EventSourceCollection { ContainerSourceCollection parent_instance; EventSourceCollectionPrivate * priv; }; struct _EventSourceCollectionClass { ContainerSourceCollectionClass parent_class; }; struct _EventSourceCollectionPrivate { ViewCollection* no_event; }; typedef gint64 (*GetSourceDatabaseKey) (DataSource* source, void* user_data); struct _EventID { gint64 id; }; struct _ViewManager { GTypeInstance parent_instance; volatile int ref_count; ViewManagerPrivate * priv; }; struct _ViewManagerClass { GTypeClass parent_class; void (*finalize) (ViewManager *self); gboolean (*include_in_view) (ViewManager* self, DataSource* source); DataView* (*create_view) (ViewManager* self, DataSource* source); }; struct _EventSourceCollectionNoEventViewManager { ViewManager parent_instance; EventSourceCollectionNoEventViewManagerPrivate * priv; }; struct _EventSourceCollectionNoEventViewManagerClass { ViewManagerClass parent_class; }; struct _DataObject { GObject parent_instance; DataObjectPrivate * priv; }; struct _DataObjectClass { GObjectClass parent_class; void (*notify_altered) (DataObject* self, Alteration* alteration); void (*notify_membership_changed) (DataObject* self, DataCollection* collection); void (*notify_collection_property_set) (DataObject* self, const gchar* name, GValue* old, GValue* val); void (*notify_collection_property_cleared) (DataObject* self, const gchar* name); gchar* (*get_name) (DataObject* self); gchar* (*to_string) (DataObject* self); }; struct _DataSource { DataObject parent_instance; DataSourcePrivate * priv; }; struct _DataSourceClass { DataObjectClass parent_class; void (*notify_held_in_tank) (DataSource* self, SourceHoldingTank* holding_tank); void (*notify_unlinking) (DataSource* self, SourceCollection* collection); void (*notify_unlinked) (DataSource* self); void (*notify_relinking) (DataSource* self, SourceCollection* collection); void (*notify_relinked) (DataSource* self); gchar* (*get_typename) (DataSource* self); gint64 (*get_instance_id) (DataSource* self); gchar* (*get_source_id) (DataSource* self); void (*commit_backlinks) (DataSource* self, SourceCollection* sources, const gchar* dehydrated); SourceSnapshot* (*save_snapshot) (DataSource* self); gboolean (*internal_delete_backing) (DataSource* self, GError** error); gboolean (*equals) (DataSource* self, DataSource* source); void (*destroy) (DataSource* self); void (*unlinked) (DataSource* self, SourceCollection* sources); void (*relinked) (DataSource* self, SourceCollection* sources); void (*destroyed) (DataSource* self); }; typedef enum { PHOTO_FILE_FORMAT_JFIF, PHOTO_FILE_FORMAT_RAW, PHOTO_FILE_FORMAT_PNG, PHOTO_FILE_FORMAT_TIFF, PHOTO_FILE_FORMAT_BMP, PHOTO_FILE_FORMAT_UNKNOWN } PhotoFileFormat; struct _ThumbnailSource { DataSource parent_instance; ThumbnailSourcePrivate * priv; }; struct _ThumbnailSourceClass { DataSourceClass parent_class; void (*notify_thumbnail_altered) (ThumbnailSource* self); GdkPixbuf* (*get_thumbnail) (ThumbnailSource* self, gint scale, GError** error); GdkPixbuf* (*create_thumbnail) (ThumbnailSource* self, gint scale, GError** error); gchar* (*get_representative_id) (ThumbnailSource* self); PhotoFileFormat (*get_preferred_thumbnail_format) (ThumbnailSource* self); void (*thumbnail_altered) (ThumbnailSource* self); }; struct _EventSource { ThumbnailSource parent_instance; EventSourcePrivate * priv; }; struct _EventSourceClass { ThumbnailSourceClass parent_class; time_t (*get_start_time) (EventSource* self); time_t (*get_end_time) (EventSource* self); guint64 (*get_total_filesize) (EventSource* self); gint (*get_media_count) (EventSource* self); GeeCollection* (*get_media) (EventSource* self); gchar* (*get_comment) (EventSource* self); gboolean (*set_comment) (EventSource* self, const gchar* comment); }; struct _ProxyableIface { GTypeInterface parent_iface; SourceProxy* (*get_proxy) (Proxyable* self); }; struct _IndexableIface { GTypeInterface parent_iface; const gchar* (*get_indexable_keywords) (Indexable* self); }; struct _Event { EventSource parent_instance; EventPrivate * priv; }; struct _EventClass { EventSourceClass parent_class; }; struct _EventPrivate { EventID event_id; gchar* raw_name; MediaSource* primary_source; ViewCollection* view; gboolean unlinking; gboolean relinking; gchar* indexable_keywords; gchar* comment; }; struct _EventRow { GTypeInstance parent_instance; volatile int ref_count; EventRowPrivate * priv; EventID event_id; gchar* name; time_t time_created; gchar* primary_source_id; gchar* comment; }; struct _EventRowClass { GTypeClass parent_class; void (*finalize) (EventRow *self); }; typedef enum { PREPARE_INPUT_TEXT_OPTIONS_EMPTY_IS_NULL = 1 << 0, PREPARE_INPUT_TEXT_OPTIONS_VALIDATE = 1 << 1, PREPARE_INPUT_TEXT_OPTIONS_INVALID_IS_NULL = 1 << 2, PREPARE_INPUT_TEXT_OPTIONS_STRIP = 1 << 3, PREPARE_INPUT_TEXT_OPTIONS_STRIP_CRLF = 1 << 4, PREPARE_INPUT_TEXT_OPTIONS_NORMALIZE = 1 << 5, PREPARE_INPUT_TEXT_OPTIONS_DEFAULT = ((((PREPARE_INPUT_TEXT_OPTIONS_EMPTY_IS_NULL | PREPARE_INPUT_TEXT_OPTIONS_VALIDATE) | PREPARE_INPUT_TEXT_OPTIONS_INVALID_IS_NULL) | PREPARE_INPUT_TEXT_OPTIONS_STRIP_CRLF) | PREPARE_INPUT_TEXT_OPTIONS_STRIP) | PREPARE_INPUT_TEXT_OPTIONS_NORMALIZE } PrepareInputTextOptions; typedef enum { RATING_REJECTED = -1, RATING_UNRATED = 0, RATING_ONE = 1, RATING_TWO = 2, RATING_THREE = 3, RATING_FOUR = 4, RATING_FIVE = 5 } Rating; typedef enum { DATABASE_ERROR_ERROR, DATABASE_ERROR_BACKING, DATABASE_ERROR_MEMORY, DATABASE_ERROR_ABORT, DATABASE_ERROR_LIMITS, DATABASE_ERROR_TYPESPEC } DatabaseError; #define DATABASE_ERROR database_error_quark () typedef DataView* (*CreateView) (DataSource* source, void* user_data); typedef gboolean (*CreateViewPredicate) (DataSource* source, void* user_data); typedef enum { SCALE_CONSTRAINT_ORIGINAL, SCALE_CONSTRAINT_DIMENSIONS, SCALE_CONSTRAINT_WIDTH, SCALE_CONSTRAINT_HEIGHT, SCALE_CONSTRAINT_FILL_VIEWPORT } ScaleConstraint; struct _Dimensions { gint width; gint height; }; struct _Scaling { ScaleConstraint constraint; gint scale; Dimensions viewport; gboolean scale_up; }; struct _SourceSnapshot { GTypeInstance parent_instance; volatile int ref_count; SourceSnapshotPrivate * priv; }; struct _SourceSnapshotClass { GTypeClass parent_class; void (*finalize) (SourceSnapshot *self); void (*notify_broken) (SourceSnapshot* self); void (*broken) (SourceSnapshot* self); }; struct _EventEventSnapshot { SourceSnapshot parent_instance; EventEventSnapshotPrivate * priv; }; struct _EventEventSnapshotClass { SourceSnapshotClass parent_class; }; struct _EventEventSnapshotPrivate { EventRow* row; MediaSource* primary_source; GeeArrayList* attached_sources; }; struct _SourceProxy { GTypeInstance parent_instance; volatile int ref_count; SourceProxyPrivate * priv; }; struct _SourceProxyClass { GTypeClass parent_class; void (*finalize) (SourceProxy *self); DataSource* (*reconstitute) (SourceProxy* self, gint64 object_id, SourceSnapshot* snapshot); void (*notify_reconstituted) (SourceProxy* self, DataSource* source); void (*notify_dehydrated) (SourceProxy* self); void (*notify_broken) (SourceProxy* self); void (*reconstituted) (SourceProxy* self, DataSource* source); void (*dehydrated) (SourceProxy* self); void (*broken) (SourceProxy* self); }; struct _EventEventProxy { SourceProxy parent_instance; EventEventProxyPrivate * priv; }; struct _EventEventProxyClass { SourceProxyClass parent_class; }; static gpointer event_source_collection_parent_class = NULL; extern LibraryPhotoSourceCollection* library_photo_global; extern VideoSourceCollection* video_global; static gpointer event_source_collection_no_event_view_manager_parent_class = NULL; static gpointer event_parent_class = NULL; extern EventSourceCollection* event_global; EventSourceCollection* event_global = NULL; static EventTable* event_event_table; static EventTable* event_event_table = NULL; static gpointer event_event_snapshot_parent_class = NULL; static gpointer event_event_proxy_parent_class = NULL; static ContainerSourceIface * event_container_source_parent_iface = NULL; static ProxyableIface * event_proxyable_parent_iface = NULL; static IndexableIface * event_indexable_parent_iface = NULL; gpointer data_collection_ref (gpointer instance); void data_collection_unref (gpointer instance); GParamSpec* param_spec_data_collection (const gchar* name, const gchar* nick, const gchar* blurb, GType object_type, GParamFlags flags); void value_set_data_collection (GValue* value, gpointer v_object); void value_take_data_collection (GValue* value, gpointer v_object); gpointer value_get_data_collection (const GValue* value); GType data_collection_get_type (void) G_GNUC_CONST; GType data_object_get_type (void) G_GNUC_CONST; gpointer alteration_ref (gpointer instance); void alteration_unref (gpointer instance); GParamSpec* param_spec_alteration (const gchar* name, const gchar* nick, const gchar* blurb, GType object_type, GParamFlags flags); void value_set_alteration (GValue* value, gpointer v_object); void value_take_alteration (GValue* value, gpointer v_object); gpointer value_get_alteration (const GValue* value); GType alteration_get_type (void) G_GNUC_CONST; GType marker_get_type (void) G_GNUC_CONST; GType source_collection_get_type (void) G_GNUC_CONST; GType data_source_get_type (void) G_GNUC_CONST; gpointer source_backlink_ref (gpointer instance); void source_backlink_unref (gpointer instance); GParamSpec* param_spec_source_backlink (const gchar* name, const gchar* nick, const gchar* blurb, GType object_type, GParamFlags flags); void value_set_source_backlink (GValue* value, gpointer v_object); void value_take_source_backlink (GValue* value, gpointer v_object); gpointer value_get_source_backlink (const GValue* value); GType source_backlink_get_type (void) G_GNUC_CONST; GType database_source_collection_get_type (void) G_GNUC_CONST; GType container_source_collection_get_type (void) G_GNUC_CONST; GType container_source_get_type (void) G_GNUC_CONST; GType event_source_collection_get_type (void) G_GNUC_CONST; GType view_collection_get_type (void) G_GNUC_CONST; #define EVENT_SOURCE_COLLECTION_GET_PRIVATE(o) (G_TYPE_INSTANCE_GET_PRIVATE ((o), TYPE_EVENT_SOURCE_COLLECTION, EventSourceCollectionPrivate)) EventSourceCollection* event_source_collection_new (void); EventSourceCollection* event_source_collection_construct (GType object_type); #define EVENT_TYPENAME "event" static gint64 event_source_collection_get_event_key (DataSource* source); static gint64 _event_source_collection_get_event_key_get_source_database_key (DataSource* source, gpointer self); ContainerSourceCollection* container_source_collection_construct (GType object_type, const gchar* backlink_name, const gchar* name, GetSourceDatabaseKey source_key_func, void* source_key_func_target); void container_source_collection_attach_collection (ContainerSourceCollection* self, SourceCollection* collection); GType media_source_collection_get_type (void) G_GNUC_CONST; GType library_photo_source_collection_get_type (void) G_GNUC_CONST; GType video_source_collection_get_type (void) G_GNUC_CONST; void event_source_collection_init (EventSourceCollection* self); ViewCollection* view_collection_new (const gchar* name); ViewCollection* view_collection_construct (GType object_type, const gchar* name); gpointer view_manager_ref (gpointer instance); void view_manager_unref (gpointer instance); GParamSpec* param_spec_view_manager (const gchar* name, const gchar* nick, const gchar* blurb, GType object_type, GParamFlags flags); void value_set_view_manager (GValue* value, gpointer v_object); void value_take_view_manager (GValue* value, gpointer v_object); gpointer value_get_view_manager (const GValue* value); GType view_manager_get_type (void) G_GNUC_CONST; static GType event_source_collection_no_event_view_manager_get_type (void) G_GNUC_CONST G_GNUC_UNUSED; static EventSourceCollectionNoEventViewManager* event_source_collection_no_event_view_manager_new (void); static EventSourceCollectionNoEventViewManager* event_source_collection_no_event_view_manager_construct (GType object_type); Alteration* alteration_new (const gchar* subject, const gchar* detail); Alteration* alteration_construct (GType object_type, const gchar* subject, const gchar* detail); gpointer view_collection_monitor_ref (gpointer instance); void view_collection_monitor_unref (gpointer instance); GParamSpec* view_collection_param_spec_monitor (const gchar* name, const gchar* nick, const gchar* blurb, GType object_type, GParamFlags flags); void view_collection_value_set_monitor (GValue* value, gpointer v_object); void view_collection_value_take_monitor (GValue* value, gpointer v_object); gpointer view_collection_value_get_monitor (const GValue* value); GType view_collection_monitor_get_type (void) G_GNUC_CONST; ViewCollectionMonitor* view_collection_monitor_source_collection (ViewCollection* self, SourceCollection* sources, ViewManager* manager, Alteration* prereq, GeeCollection* initial, ProgressMonitor progress_monitor, void* progress_monitor_target); static void event_source_collection_on_no_event_collection_altered (EventSourceCollection* self, GeeIterable* added, GeeIterable* removed); static void _event_source_collection_on_no_event_collection_altered_data_collection_contents_altered (DataCollection* _sender, GeeIterable* added, GeeIterable* removed, gpointer self); static gboolean event_source_collection_real_holds_type_of_source (SourceCollection* base, DataSource* source); GType thumbnail_source_get_type (void) G_GNUC_CONST; GType event_source_get_type (void) G_GNUC_CONST; GType event_get_type (void) G_GNUC_CONST; GType event_id_get_type (void) G_GNUC_CONST; EventID* event_id_dup (const EventID* self); void event_id_free (EventID* self); void event_get_event_id (Event* self, EventID* result); Event* event_source_collection_fetch (EventSourceCollection* self, EventID* event_id); DataSource* database_source_collection_fetch_by_key (DatabaseSourceCollection* self, gint64 key); static GeeCollection* event_source_collection_real_get_containers_holding_source (ContainerSourceCollection* base, DataSource* source); GType media_source_get_type (void) G_GNUC_CONST; Event* media_source_get_event (MediaSource* self); static ContainerSource* event_source_collection_real_convert_backlink_to_container (ContainerSourceCollection* base, SourceBacklink* backlink); gint64 source_backlink_get_instance_id (SourceBacklink* self); void event_id_init (EventID *self, gint64 id); GeeCollection* container_source_collection_get_holding_tank (ContainerSourceCollection* self); GeeCollection* event_source_collection_get_no_event_objects (EventSourceCollection* self); GeeCollection* view_collection_get_sources (ViewCollection* self); GType data_view_get_type (void) G_GNUC_CONST; static gboolean event_source_collection_no_event_view_manager_real_include_in_view (ViewManager* base, DataSource* source); void media_source_get_event_id (MediaSource* self, EventID* result); #define EVENT_ID_INVALID ((gint64) -1) gboolean view_manager_include_in_view (ViewManager* self, DataSource* source); static DataView* event_source_collection_no_event_view_manager_real_create_view (ViewManager* base, DataSource* source); ThumbnailView* thumbnail_view_new (ThumbnailSource* source); ThumbnailView* thumbnail_view_construct (GType object_type, ThumbnailSource* source); GType thumbnail_view_get_type (void) G_GNUC_CONST; ViewManager* view_manager_construct (GType object_type); static void event_source_collection_finalize (DataCollection * obj); gpointer source_holding_tank_ref (gpointer instance); void source_holding_tank_unref (gpointer instance); GParamSpec* param_spec_source_holding_tank (const gchar* name, const gchar* nick, const gchar* blurb, GType object_type, GParamFlags flags); void value_set_source_holding_tank (GValue* value, gpointer v_object); void value_take_source_holding_tank (GValue* value, gpointer v_object); gpointer value_get_source_holding_tank (const GValue* value); GType source_holding_tank_get_type (void) G_GNUC_CONST; gpointer source_snapshot_ref (gpointer instance); void source_snapshot_unref (gpointer instance); GParamSpec* param_spec_source_snapshot (const gchar* name, const gchar* nick, const gchar* blurb, GType object_type, GParamFlags flags); void value_set_source_snapshot (GValue* value, gpointer v_object); void value_take_source_snapshot (GValue* value, gpointer v_object); gpointer value_get_source_snapshot (const GValue* value); GType source_snapshot_get_type (void) G_GNUC_CONST; GType photo_file_format_get_type (void) G_GNUC_CONST; gpointer source_proxy_ref (gpointer instance); void source_proxy_unref (gpointer instance); GParamSpec* param_spec_source_proxy (const gchar* name, const gchar* nick, const gchar* blurb, GType object_type, GParamFlags flags); void value_set_source_proxy (GValue* value, gpointer v_object); void value_take_source_proxy (GValue* value, gpointer v_object); gpointer value_get_source_proxy (const GValue* value); GType source_proxy_get_type (void) G_GNUC_CONST; GType proxyable_get_type (void) G_GNUC_CONST; GType indexable_get_type (void) G_GNUC_CONST; #define EVENT_GET_PRIVATE(o) (G_TYPE_INSTANCE_GET_PRIVATE ((o), TYPE_EVENT, EventPrivate)) static void event_on_primary_thumbnail_altered (Event* self); static void _event_on_primary_thumbnail_altered_thumbnail_source_thumbnail_altered (ThumbnailSource* _sender, gpointer self); static void event_on_media_altered (Event* self, GeeMap* items); static void _event_on_media_altered_data_collection_items_altered (DataCollection* _sender, GeeMap* items, gpointer self); static void event_on_media_removed (Event* self, GeeIterable* removed); static void _event_on_media_removed_data_collection_items_removed (DataCollection* _sender, GeeIterable* removed, gpointer self); static void event_on_media_added (Event* self, GeeIterable* added); static void _event_on_media_added_data_collection_items_added (DataCollection* _sender, GeeIterable* added, gpointer self); static void event_on_media_destroyed (Event* self, DataSource* source); static void _event_on_media_destroyed_source_collection_item_destroyed (SourceCollection* _sender, DataSource* source, gpointer self); gpointer database_table_ref (gpointer instance); void database_table_unref (gpointer instance); GParamSpec* param_spec_database_table (const gchar* name, const gchar* nick, const gchar* blurb, GType object_type, GParamFlags flags); void value_set_database_table (GValue* value, gpointer v_object); void value_take_database_table (GValue* value, gpointer v_object); gpointer value_get_database_table (const GValue* value); GType database_table_get_type (void) G_GNUC_CONST; GType event_table_get_type (void) G_GNUC_CONST; #define EVENT_PROP_SHOW_COMMENTS "show-comments" #define EVENT_EVENT_BOUNDARY_HOUR 4 #define EVENT_TIME_T_DAY ((time_t) ((24 * 60) * 60)) gpointer event_row_ref (gpointer instance); void event_row_unref (gpointer instance); GParamSpec* param_spec_event_row (const gchar* name, const gchar* nick, const gchar* blurb, GType object_type, GParamFlags flags); void value_set_event_row (GValue* value, gpointer v_object); void value_take_event_row (GValue* value, gpointer v_object); gpointer value_get_event_row (const GValue* value); GType event_row_get_type (void) G_GNUC_CONST; static Event* event_new (EventRow* event_row, gint64 object_id); static Event* event_construct (GType object_type, EventRow* event_row, gint64 object_id); EventSource* event_source_construct (GType object_type, gint64 object_id); gchar* event_prep_event_name (const gchar* name); gpointer media_collection_registry_ref (gpointer instance); void media_collection_registry_unref (gpointer instance); GParamSpec* param_spec_media_collection_registry (const gchar* name, const gchar* nick, const gchar* blurb, GType object_type, GParamFlags flags); void value_set_media_collection_registry (GValue* value, gpointer v_object); void value_take_media_collection_registry (GValue* value, gpointer v_object); gpointer value_get_media_collection_registry (const GValue* value); GType media_collection_registry_get_type (void) G_GNUC_CONST; MediaCollectionRegistry* media_collection_registry_get_instance (void); GeeCollection* media_collection_registry_get_source_ids_for_event_id (MediaCollectionRegistry* self, EventID* event_id); MediaSource* media_collection_registry_fetch_media (MediaCollectionRegistry* self, const gchar* source_id); void data_collection_set_comparator (DataCollection* self, Comparator comparator, void* comparator_target, ComparatorPredicate predicate, void* predicate_target); static gint64 event_view_comparator (void* a, void* b); static gint64 _event_view_comparator_comparator (void* a, void* b, gpointer self); static gboolean event_view_comparator_predicate (DataObject* object, Alteration* alteration); static gboolean _event_view_comparator_predicate_comparator_predicate (DataObject* object, Alteration* alteration, gpointer self); GeeCollection* data_collection_add_many (DataCollection* self, GeeCollection* objects, ProgressMonitor monitor, void* monitor_target); void container_source_collection_notify_container_contents_added (ContainerSourceCollection* self, ContainerSource* container, GeeCollection* added, gboolean relinked); void container_source_collection_notify_container_contents_altered (ContainerSourceCollection* self, ContainerSource* container, GeeCollection* added, gboolean relinked, GeeCollection* removed, gboolean unlinked); gint data_collection_get_count (DataCollection* self); DataView* view_collection_get_first_unrejected (ViewCollection* self); DataSource* data_view_get_source (DataView* self); gboolean event_table_set_primary_source_id (EventTable* self, EventID* event_id, const gchar* primary_source_id); gchar* data_source_get_source_id (DataSource* self); static void event_update_indexable_keywords (Event* self); static gchar* event_real_get_typename (DataSource* base); static gint64 event_real_get_instance_id (DataSource* base); static gchar* event_real_get_representative_id (ThumbnailSource* base); static PhotoFileFormat event_real_get_preferred_thumbnail_format (ThumbnailSource* base); PhotoFileFormat thumbnail_source_get_preferred_thumbnail_format (ThumbnailSource* self); PhotoFileFormat photo_file_format_get_system_default_format (void); static GdkPixbuf* event_real_create_thumbnail (ThumbnailSource* base, gint scale, GError** error); GdkPixbuf* thumbnail_source_create_thumbnail (ThumbnailSource* self, gint scale, GError** error); void event_init (ProgressMonitor monitor, void* monitor_target); EventTable* event_table_get_instance (void); GeeArrayList* event_table_get_events (EventTable* self); #define DATA_OBJECT_INVALID_OBJECT_ID ((gint64) -1) gint event_source_get_media_count (EventSource* self); void data_source_rehydrate_backlinks (DataSource* self, SourceCollection* unlinked_from, const gchar* dehydrated); void container_source_collection_init_add_many_unlinked (ContainerSourceCollection* self, GeeCollection* unlinked); void event_terminate (void); time_t media_source_get_exposure_time (MediaSource* self); gboolean alteration_has_detail (Alteration* self, const gchar* subject, const gchar* detail); GType prepare_input_text_options_get_type (void) G_GNUC_CONST; gchar* prepare_input_text (const gchar* text, PrepareInputTextOptions options, gint dest_length); #define DEFAULT_USER_TEXT_INPUT_LENGTH 1024 void event_attach (Event* self, MediaSource* source); gboolean data_collection_add (DataCollection* self, DataObject* object); void event_attach_many (Event* self, GeeCollection* media); void event_detach (Event* self, MediaSource* source); void data_collection_remove_marked (DataCollection* self, Marker* m); Marker* data_collection_mark (DataCollection* self, DataObject* object); DataView* view_collection_get_view_for_source (ViewCollection* self, DataSource* source); void event_detach_many (Event* self, GeeCollection* media); Marker* data_collection_mark_many (DataCollection* self, GeeCollection* objects); gboolean event_contains_media_type (Event* self, const gchar* media_type); GeeCollection* event_source_get_media (EventSource* self); gchar* data_source_get_typename (DataSource* self); static GeeArrayList* event_views_to_media (Event* self, GeeIterable* views); void data_object_notify_altered (DataObject* self, Alteration* alteration); Alteration* alteration_new_from_list (const gchar* list); Alteration* alteration_construct_from_list (GType object_type, const gchar* list); void container_source_collection_notify_container_contents_removed (ContainerSourceCollection* self, ContainerSource* container, GeeCollection* removed, gboolean unlinked); gboolean event_set_primary_source (Event* self, MediaSource* source); static void event_release_primary_source (Event* self); void container_source_collection_evaporate (ContainerSourceCollection* self, ContainerSource* container); static void event_real_notify_relinking (DataSource* base, SourceCollection* sources); void data_source_notify_relinking (DataSource* self, SourceCollection* collection); gboolean event_has_name (Event* self); MediaSource* event_get_primary_source (Event* self); GType rating_get_type (void) G_GNUC_CONST; Rating media_source_get_rating (MediaSource* self); Event* event_create_empty_event (MediaSource* source); GQuark database_error_quark (void); EventRow* event_table_create (EventTable* self, const gchar* primary_source_id, const gchar* comment, GError** error); gchar* data_object_to_string (DataObject* self); void app_window_database_error (GError* err); static Event* event_reconstitute (gint64 object_id, EventRow* row); void event_table_create_from_row (EventTable* self, EventRow* row, EventID* result); gboolean data_collection_contains (DataCollection* self, DataObject* object); static gboolean event_real_has_links (ContainerSource* base); gboolean source_collection_has_backlink (SourceCollection* self, SourceBacklink* backlink); SourceBacklink* container_source_get_backlink (ContainerSource* self); static SourceBacklink* event_real_get_backlink (ContainerSource* base); SourceBacklink* source_backlink_new_from_source (DataSource* source); SourceBacklink* source_backlink_construct_from_source (GType object_type, DataSource* source); static void event_real_break_link (ContainerSource* base, DataSource* source); gboolean media_source_set_event (MediaSource* self, Event* new_event); static void event_real_break_link_many (ContainerSource* base, GeeCollection* sources); GType photo_source_get_type (void) G_GNUC_CONST; GType photo_get_type (void) G_GNUC_CONST; GType library_photo_get_type (void) G_GNUC_CONST; GType video_source_get_type (void) G_GNUC_CONST; GType video_get_type (void) G_GNUC_CONST; void media_source_collection_filter_media (GeeCollection* media, GeeCollection* photos, GeeCollection* videos); gpointer transaction_controller_ref (gpointer instance); void transaction_controller_unref (gpointer instance); GParamSpec* param_spec_transaction_controller (const gchar* name, const gchar* nick, const gchar* blurb, GType object_type, GParamFlags flags); void value_set_transaction_controller (GValue* value, gpointer v_object); void value_take_transaction_controller (GValue* value, gpointer v_object); gpointer value_get_transaction_controller (const GValue* value); GType transaction_controller_get_type (void) G_GNUC_CONST; void media_source_set_many_to_event (GeeCollection* media_sources, Event* event, TransactionController* controller, GError** error); TransactionController* media_source_collection_get_transaction_controller (MediaSourceCollection* self); void app_window_error_message (const gchar* message, GtkWindow* parent); static void event_real_establish_link (ContainerSource* base, DataSource* source); static void event_real_establish_link_many (ContainerSource* base, GeeCollection* sources); gchar* event_get_raw_name (Event* self); gchar* event_source_get_comment (EventSource* self); gchar* indexable_prepare_indexable_string (const gchar* str); static const gchar* event_real_get_indexable_keywords (Indexable* base); gboolean event_is_in_starting_day (Event* self, time_t time); DataObject* data_collection_get_at (DataCollection* self, gint index); static Event* event_generate_event (MediaSource* media, ViewCollection* events_so_far, const gchar* event_name, gboolean* new_event); GType event_view_get_type (void) G_GNUC_CONST; gchar* data_object_get_name (DataObject* self); gboolean event_rename (Event* self, const gchar* name); EventView* event_view_new (EventSource* source); EventView* event_view_construct (GType object_type, EventSource* source); void event_generate_single_event (MediaSource* media, ViewCollection* events_so_far, const gchar* event_name); void event_generate_many_events (GeeCollection* sources, ViewCollection* events_so_far); static SourceSnapshot* event_real_save_snapshot (DataSource* base); static EventEventSnapshot* event_event_snapshot_new (Event* event); static EventEventSnapshot* event_event_snapshot_construct (GType object_type, Event* event); static GType event_event_snapshot_get_type (void) G_GNUC_CONST G_GNUC_UNUSED; static SourceProxy* event_real_get_proxy (Proxyable* base); static EventEventProxy* event_event_proxy_new (Event* event); static EventEventProxy* event_event_proxy_construct (GType object_type, Event* event); static GType event_event_proxy_get_type (void) G_GNUC_CONST G_GNUC_UNUSED; static gboolean event_real_equals (DataSource* base, DataSource* source); gboolean data_source_equals (DataSource* self, DataSource* source); static gchar* event_real_to_string (DataObject* base); gint64 data_object_get_object_id (DataObject* self); static gchar* event_real_get_name (DataObject* base); gchar* event_get_formatted_daterange (Event* self); gboolean is_string_empty (const gchar* s); time_t event_source_get_start_time (EventSource* self); time_t event_source_get_end_time (EventSource* self); gchar* format_local_date (struct tm* date); gchar* format_local_datespan (struct tm* from_date, struct tm* to_date); static gchar* event_real_get_comment (EventSource* base); gboolean event_table_rename (EventTable* self, EventID* event_id, const gchar* name); static gboolean event_real_set_comment (EventSource* base, const gchar* comment); gchar* media_source_prep_comment (const gchar* comment); gboolean event_table_set_comment (EventTable* self, EventID* event_id, const gchar* new_comment); time_t event_get_creation_time (Event* self); time_t event_table_get_time_created (EventTable* self, EventID* event_id); static time_t event_real_get_start_time (EventSource* base); static time_t event_real_get_end_time (EventSource* base); static guint64 event_real_get_total_filesize (EventSource* base); guint64 media_source_get_filesize (MediaSource* self); static gint event_real_get_media_count (EventSource* base); static GeeCollection* event_real_get_media (EventSource* base); void event_mirror_photos (Event* self, ViewCollection* view, CreateView mirroring_ctor, void* mirroring_ctor_target); void view_collection_mirror (ViewCollection* self, ViewCollection* to_mirror, CreateView mirroring_ctor, void* mirroring_ctor_target, CreateViewPredicate should_mirror, void* should_mirror_target); void thumbnail_source_notify_thumbnail_altered (ThumbnailSource* self); gboolean view_collection_has_view_for_source (ViewCollection* self, DataSource* source); static GdkPixbuf* event_real_get_thumbnail (ThumbnailSource* base, gint scale, GError** error); GdkPixbuf* thumbnail_source_get_thumbnail (ThumbnailSource* self, gint scale, GError** error); GType scaling_get_type (void) G_GNUC_CONST; GType scale_constraint_get_type (void) G_GNUC_CONST; GType dimensions_get_type (void) G_GNUC_CONST; Dimensions* dimensions_dup (const Dimensions* self); void dimensions_free (Dimensions* self); Scaling* scaling_dup (const Scaling* self); void scaling_free (Scaling* self); GdkPixbuf* event_get_preview_pixbuf (Event* self, Scaling* scaling); GdkPixbuf* media_source_get_preview_pixbuf (MediaSource* self, Scaling* scaling, GError** error); static void event_real_destroy (DataSource* base); void view_collection_halt_all_monitoring (ViewCollection* self); void event_table_remove (EventTable* self, EventID* event_id, GError** error); GType photo_table_get_type (void) G_GNUC_CONST; PhotoTable* photo_table_get_instance (void); gboolean photo_table_drop_event (PhotoTable* self, EventID* event_id); GType video_table_get_type (void) G_GNUC_CONST; VideoTable* video_table_get_instance (void); gboolean video_table_drop_event (VideoTable* self, EventID* event_id); void data_source_destroy (DataSource* self); #define EVENT_EVENT_SNAPSHOT_GET_PRIVATE(o) (G_TYPE_INSTANCE_GET_PRIVATE ((o), EVENT_TYPE_EVENT_SNAPSHOT, EventEventSnapshotPrivate)) static void event_event_snapshot_on_attached_source_destroyed (EventEventSnapshot* self, DataSource* source); static void _event_event_snapshot_on_attached_source_destroyed_source_collection_item_destroyed (SourceCollection* _sender, DataSource* source, gpointer self); SourceSnapshot* source_snapshot_construct (GType object_type); EventRow* event_table_get_row (EventTable* self, EventID* event_id); static EventRow* event_event_snapshot_get_row (EventEventSnapshot* self); static void event_event_snapshot_real_notify_broken (SourceSnapshot* base); EventRow* event_row_new (void); EventRow* event_row_construct (GType object_type); void source_snapshot_notify_broken (SourceSnapshot* self); static void event_event_snapshot_finalize (SourceSnapshot * obj); SourceProxy* source_proxy_construct (GType object_type, DataSource* source); static DataSource* event_event_proxy_real_reconstitute (SourceProxy* base, gint64 object_id, SourceSnapshot* snapshot); static void event_finalize (GObject * obj); static void _vala_array_destroy (gpointer array, gint array_length, GDestroyNotify destroy_func); static void _vala_array_free (gpointer array, gint array_length, GDestroyNotify destroy_func); static gint64 _event_source_collection_get_event_key_get_source_database_key (DataSource* source, gpointer self) { gint64 result; result = event_source_collection_get_event_key (source); #line 25 "/home/jens/Source/shotwell/src/Event.vala" return result; #line 1530 "Event.c" } EventSourceCollection* event_source_collection_construct (GType object_type) { EventSourceCollection* self = NULL; LibraryPhotoSourceCollection* _tmp0_; VideoSourceCollection* _tmp1_; #line 25 "/home/jens/Source/shotwell/src/Event.vala" self = (EventSourceCollection*) container_source_collection_construct (object_type, EVENT_TYPENAME, "EventSourceCollection", _event_source_collection_get_event_key_get_source_database_key, NULL); #line 27 "/home/jens/Source/shotwell/src/Event.vala" _tmp0_ = library_photo_global; #line 27 "/home/jens/Source/shotwell/src/Event.vala" container_source_collection_attach_collection (G_TYPE_CHECK_INSTANCE_CAST (self, TYPE_CONTAINER_SOURCE_COLLECTION, ContainerSourceCollection), G_TYPE_CHECK_INSTANCE_CAST (_tmp0_, TYPE_SOURCE_COLLECTION, SourceCollection)); #line 28 "/home/jens/Source/shotwell/src/Event.vala" _tmp1_ = video_global; #line 28 "/home/jens/Source/shotwell/src/Event.vala" container_source_collection_attach_collection (G_TYPE_CHECK_INSTANCE_CAST (self, TYPE_CONTAINER_SOURCE_COLLECTION, ContainerSourceCollection), G_TYPE_CHECK_INSTANCE_CAST (_tmp1_, TYPE_SOURCE_COLLECTION, SourceCollection)); #line 24 "/home/jens/Source/shotwell/src/Event.vala" return self; #line 1552 "Event.c" } EventSourceCollection* event_source_collection_new (void) { #line 24 "/home/jens/Source/shotwell/src/Event.vala" return event_source_collection_construct (TYPE_EVENT_SOURCE_COLLECTION); #line 1561 "Event.c" } static void _event_source_collection_on_no_event_collection_altered_data_collection_contents_altered (DataCollection* _sender, GeeIterable* added, GeeIterable* removed, gpointer self) { #line 40 "/home/jens/Source/shotwell/src/Event.vala" event_source_collection_on_no_event_collection_altered ((EventSourceCollection*) self, added, removed); #line 1573 "Event.c" } void event_source_collection_init (EventSourceCollection* self) { ViewCollection* _tmp0_; EventSourceCollectionNoEventViewManager* view_manager = NULL; EventSourceCollectionNoEventViewManager* _tmp1_; Alteration* filter_alteration = NULL; Alteration* _tmp2_; ViewCollection* _tmp3_; LibraryPhotoSourceCollection* _tmp4_; ViewCollectionMonitor* _tmp5_; ViewCollectionMonitor* _tmp6_; ViewCollection* _tmp7_; VideoSourceCollection* _tmp8_; ViewCollectionMonitor* _tmp9_; ViewCollectionMonitor* _tmp10_; ViewCollection* _tmp11_; #line 31 "/home/jens/Source/shotwell/src/Event.vala" g_return_if_fail (IS_EVENT_SOURCE_COLLECTION (self)); #line 32 "/home/jens/Source/shotwell/src/Event.vala" _tmp0_ = view_collection_new ("No Event View Collection"); #line 32 "/home/jens/Source/shotwell/src/Event.vala" _data_collection_unref0 (self->priv->no_event); #line 32 "/home/jens/Source/shotwell/src/Event.vala" self->priv->no_event = _tmp0_; #line 34 "/home/jens/Source/shotwell/src/Event.vala" _tmp1_ = event_source_collection_no_event_view_manager_new (); #line 34 "/home/jens/Source/shotwell/src/Event.vala" view_manager = _tmp1_; #line 35 "/home/jens/Source/shotwell/src/Event.vala" _tmp2_ = alteration_new ("metadata", "event"); #line 35 "/home/jens/Source/shotwell/src/Event.vala" filter_alteration = _tmp2_; #line 37 "/home/jens/Source/shotwell/src/Event.vala" _tmp3_ = self->priv->no_event; #line 37 "/home/jens/Source/shotwell/src/Event.vala" _tmp4_ = library_photo_global; #line 37 "/home/jens/Source/shotwell/src/Event.vala" _tmp5_ = view_collection_monitor_source_collection (_tmp3_, G_TYPE_CHECK_INSTANCE_CAST (_tmp4_, TYPE_SOURCE_COLLECTION, SourceCollection), G_TYPE_CHECK_INSTANCE_CAST (view_manager, TYPE_VIEW_MANAGER, ViewManager), filter_alteration, NULL, NULL, NULL); #line 37 "/home/jens/Source/shotwell/src/Event.vala" _tmp6_ = _tmp5_; #line 37 "/home/jens/Source/shotwell/src/Event.vala" _view_collection_monitor_unref0 (_tmp6_); #line 38 "/home/jens/Source/shotwell/src/Event.vala" _tmp7_ = self->priv->no_event; #line 38 "/home/jens/Source/shotwell/src/Event.vala" _tmp8_ = video_global; #line 38 "/home/jens/Source/shotwell/src/Event.vala" _tmp9_ = view_collection_monitor_source_collection (_tmp7_, G_TYPE_CHECK_INSTANCE_CAST (_tmp8_, TYPE_SOURCE_COLLECTION, SourceCollection), G_TYPE_CHECK_INSTANCE_CAST (view_manager, TYPE_VIEW_MANAGER, ViewManager), filter_alteration, NULL, NULL, NULL); #line 38 "/home/jens/Source/shotwell/src/Event.vala" _tmp10_ = _tmp9_; #line 38 "/home/jens/Source/shotwell/src/Event.vala" _view_collection_monitor_unref0 (_tmp10_); #line 40 "/home/jens/Source/shotwell/src/Event.vala" _tmp11_ = self->priv->no_event; #line 40 "/home/jens/Source/shotwell/src/Event.vala" g_signal_connect (G_TYPE_CHECK_INSTANCE_CAST (_tmp11_, TYPE_DATA_COLLECTION, DataCollection), "contents-altered", (GCallback) _event_source_collection_on_no_event_collection_altered_data_collection_contents_altered, self); #line 31 "/home/jens/Source/shotwell/src/Event.vala" _alteration_unref0 (filter_alteration); #line 31 "/home/jens/Source/shotwell/src/Event.vala" _view_manager_unref0 (view_manager); #line 1638 "Event.c" } static gboolean event_source_collection_real_holds_type_of_source (SourceCollection* base, DataSource* source) { EventSourceCollection * self; gboolean result = FALSE; #line 43 "/home/jens/Source/shotwell/src/Event.vala" self = G_TYPE_CHECK_INSTANCE_CAST (base, TYPE_EVENT_SOURCE_COLLECTION, EventSourceCollection); #line 43 "/home/jens/Source/shotwell/src/Event.vala" g_return_val_if_fail (IS_DATA_SOURCE (source), FALSE); #line 44 "/home/jens/Source/shotwell/src/Event.vala" result = G_TYPE_CHECK_INSTANCE_TYPE (source, TYPE_EVENT); #line 44 "/home/jens/Source/shotwell/src/Event.vala" return result; #line 1656 "Event.c" } static gpointer _g_object_ref0 (gpointer self) { #line 48 "/home/jens/Source/shotwell/src/Event.vala" return self ? g_object_ref (self) : NULL; #line 1665 "Event.c" } static gint64 event_source_collection_get_event_key (DataSource* source) { gint64 result = 0LL; Event* event = NULL; Event* _tmp0_; EventID event_id = {0}; EventID _tmp1_ = {0}; EventID _tmp2_; gint64 _tmp3_; #line 47 "/home/jens/Source/shotwell/src/Event.vala" g_return_val_if_fail (IS_DATA_SOURCE (source), 0LL); #line 48 "/home/jens/Source/shotwell/src/Event.vala" _tmp0_ = _g_object_ref0 (G_TYPE_CHECK_INSTANCE_CAST (source, TYPE_EVENT, Event)); #line 48 "/home/jens/Source/shotwell/src/Event.vala" event = _tmp0_; #line 49 "/home/jens/Source/shotwell/src/Event.vala" event_get_event_id (event, &_tmp1_); #line 49 "/home/jens/Source/shotwell/src/Event.vala" event_id = _tmp1_; #line 51 "/home/jens/Source/shotwell/src/Event.vala" _tmp2_ = event_id; #line 51 "/home/jens/Source/shotwell/src/Event.vala" _tmp3_ = _tmp2_.id; #line 51 "/home/jens/Source/shotwell/src/Event.vala" result = _tmp3_; #line 51 "/home/jens/Source/shotwell/src/Event.vala" _g_object_unref0 (event); #line 51 "/home/jens/Source/shotwell/src/Event.vala" return result; #line 1699 "Event.c" } Event* event_source_collection_fetch (EventSourceCollection* self, EventID* event_id) { Event* result = NULL; EventID _tmp0_; gint64 _tmp1_; DataSource* _tmp2_; #line 54 "/home/jens/Source/shotwell/src/Event.vala" g_return_val_if_fail (IS_EVENT_SOURCE_COLLECTION (self), NULL); #line 54 "/home/jens/Source/shotwell/src/Event.vala" g_return_val_if_fail (event_id != NULL, NULL); #line 55 "/home/jens/Source/shotwell/src/Event.vala" _tmp0_ = *event_id; #line 55 "/home/jens/Source/shotwell/src/Event.vala" _tmp1_ = _tmp0_.id; #line 55 "/home/jens/Source/shotwell/src/Event.vala" _tmp2_ = database_source_collection_fetch_by_key (G_TYPE_CHECK_INSTANCE_CAST (self, TYPE_DATABASE_SOURCE_COLLECTION, DatabaseSourceCollection), _tmp1_); #line 55 "/home/jens/Source/shotwell/src/Event.vala" result = G_TYPE_CHECK_INSTANCE_CAST (_tmp2_, TYPE_EVENT, Event); #line 55 "/home/jens/Source/shotwell/src/Event.vala" return result; #line 1725 "Event.c" } static GeeCollection* event_source_collection_real_get_containers_holding_source (ContainerSourceCollection* base, DataSource* source) { EventSourceCollection * self; GeeCollection* result = NULL; Event* event = NULL; Event* _tmp0_; Event* _tmp1_; GeeArrayList* list = NULL; GeeArrayList* _tmp2_; GeeArrayList* _tmp3_; Event* _tmp4_; #line 58 "/home/jens/Source/shotwell/src/Event.vala" self = G_TYPE_CHECK_INSTANCE_CAST (base, TYPE_EVENT_SOURCE_COLLECTION, EventSourceCollection); #line 58 "/home/jens/Source/shotwell/src/Event.vala" g_return_val_if_fail (IS_DATA_SOURCE (source), NULL); #line 59 "/home/jens/Source/shotwell/src/Event.vala" _tmp0_ = media_source_get_event (G_TYPE_CHECK_INSTANCE_CAST (source, TYPE_MEDIA_SOURCE, MediaSource)); #line 59 "/home/jens/Source/shotwell/src/Event.vala" event = _tmp0_; #line 60 "/home/jens/Source/shotwell/src/Event.vala" _tmp1_ = event; #line 60 "/home/jens/Source/shotwell/src/Event.vala" if (_tmp1_ == NULL) { #line 61 "/home/jens/Source/shotwell/src/Event.vala" result = NULL; #line 61 "/home/jens/Source/shotwell/src/Event.vala" _g_object_unref0 (event); #line 61 "/home/jens/Source/shotwell/src/Event.vala" return result; #line 1760 "Event.c" } #line 63 "/home/jens/Source/shotwell/src/Event.vala" _tmp2_ = gee_array_list_new (TYPE_CONTAINER_SOURCE, (GBoxedCopyFunc) g_object_ref, (GDestroyNotify) g_object_unref, NULL, NULL, NULL); #line 63 "/home/jens/Source/shotwell/src/Event.vala" list = _tmp2_; #line 64 "/home/jens/Source/shotwell/src/Event.vala" _tmp3_ = list; #line 64 "/home/jens/Source/shotwell/src/Event.vala" _tmp4_ = event; #line 64 "/home/jens/Source/shotwell/src/Event.vala" gee_abstract_collection_add (G_TYPE_CHECK_INSTANCE_CAST (_tmp3_, GEE_TYPE_ABSTRACT_COLLECTION, GeeAbstractCollection), G_TYPE_CHECK_INSTANCE_CAST (_tmp4_, TYPE_CONTAINER_SOURCE, ContainerSource)); #line 66 "/home/jens/Source/shotwell/src/Event.vala" result = G_TYPE_CHECK_INSTANCE_CAST (list, GEE_TYPE_COLLECTION, GeeCollection); #line 66 "/home/jens/Source/shotwell/src/Event.vala" _g_object_unref0 (event); #line 66 "/home/jens/Source/shotwell/src/Event.vala" return result; #line 1778 "Event.c" } static ContainerSource* event_source_collection_real_convert_backlink_to_container (ContainerSourceCollection* base, SourceBacklink* backlink) { EventSourceCollection * self; ContainerSource* result = NULL; EventID event_id = {0}; gint64 _tmp0_; gint64 _tmp1_; Event* event = NULL; EventID _tmp2_; Event* _tmp3_; Event* _tmp4_; #line 69 "/home/jens/Source/shotwell/src/Event.vala" self = G_TYPE_CHECK_INSTANCE_CAST (base, TYPE_EVENT_SOURCE_COLLECTION, EventSourceCollection); #line 69 "/home/jens/Source/shotwell/src/Event.vala" g_return_val_if_fail (IS_SOURCE_BACKLINK (backlink), NULL); #line 70 "/home/jens/Source/shotwell/src/Event.vala" _tmp0_ = source_backlink_get_instance_id (backlink); #line 70 "/home/jens/Source/shotwell/src/Event.vala" _tmp1_ = _tmp0_; #line 70 "/home/jens/Source/shotwell/src/Event.vala" event_id_init (&event_id, _tmp1_); #line 72 "/home/jens/Source/shotwell/src/Event.vala" _tmp2_ = event_id; #line 72 "/home/jens/Source/shotwell/src/Event.vala" _tmp3_ = event_source_collection_fetch (self, &_tmp2_); #line 72 "/home/jens/Source/shotwell/src/Event.vala" event = _tmp3_; #line 73 "/home/jens/Source/shotwell/src/Event.vala" _tmp4_ = event; #line 73 "/home/jens/Source/shotwell/src/Event.vala" if (_tmp4_ != NULL) { #line 74 "/home/jens/Source/shotwell/src/Event.vala" result = G_TYPE_CHECK_INSTANCE_CAST (event, TYPE_CONTAINER_SOURCE, ContainerSource); #line 74 "/home/jens/Source/shotwell/src/Event.vala" return result; #line 1819 "Event.c" } { GeeIterator* _container_it = NULL; GeeCollection* _tmp5_; GeeCollection* _tmp6_; GeeIterator* _tmp7_; GeeIterator* _tmp8_; #line 76 "/home/jens/Source/shotwell/src/Event.vala" _tmp5_ = container_source_collection_get_holding_tank (G_TYPE_CHECK_INSTANCE_CAST (self, TYPE_CONTAINER_SOURCE_COLLECTION, ContainerSourceCollection)); #line 76 "/home/jens/Source/shotwell/src/Event.vala" _tmp6_ = _tmp5_; #line 76 "/home/jens/Source/shotwell/src/Event.vala" _tmp7_ = gee_iterable_iterator (G_TYPE_CHECK_INSTANCE_CAST (_tmp6_, GEE_TYPE_ITERABLE, GeeIterable)); #line 76 "/home/jens/Source/shotwell/src/Event.vala" _tmp8_ = _tmp7_; #line 76 "/home/jens/Source/shotwell/src/Event.vala" _g_object_unref0 (_tmp6_); #line 76 "/home/jens/Source/shotwell/src/Event.vala" _container_it = _tmp8_; #line 76 "/home/jens/Source/shotwell/src/Event.vala" while (TRUE) { #line 1841 "Event.c" GeeIterator* _tmp9_; ContainerSource* container = NULL; GeeIterator* _tmp10_; gpointer _tmp11_; ContainerSource* _tmp12_; EventID _tmp13_ = {0}; gint64 _tmp14_; EventID _tmp15_; gint64 _tmp16_; #line 76 "/home/jens/Source/shotwell/src/Event.vala" _tmp9_ = _container_it; #line 76 "/home/jens/Source/shotwell/src/Event.vala" if (!gee_iterator_next (_tmp9_)) { #line 76 "/home/jens/Source/shotwell/src/Event.vala" break; #line 1857 "Event.c" } #line 76 "/home/jens/Source/shotwell/src/Event.vala" _tmp10_ = _container_it; #line 76 "/home/jens/Source/shotwell/src/Event.vala" _tmp11_ = gee_iterator_get (_tmp10_); #line 76 "/home/jens/Source/shotwell/src/Event.vala" container = (ContainerSource*) _tmp11_; #line 77 "/home/jens/Source/shotwell/src/Event.vala" _tmp12_ = container; #line 77 "/home/jens/Source/shotwell/src/Event.vala" event_get_event_id (G_TYPE_CHECK_INSTANCE_CAST (_tmp12_, TYPE_EVENT, Event), &_tmp13_); #line 77 "/home/jens/Source/shotwell/src/Event.vala" _tmp14_ = _tmp13_.id; #line 77 "/home/jens/Source/shotwell/src/Event.vala" _tmp15_ = event_id; #line 77 "/home/jens/Source/shotwell/src/Event.vala" _tmp16_ = _tmp15_.id; #line 77 "/home/jens/Source/shotwell/src/Event.vala" if (_tmp14_ == _tmp16_) { #line 78 "/home/jens/Source/shotwell/src/Event.vala" result = container; #line 78 "/home/jens/Source/shotwell/src/Event.vala" _g_object_unref0 (_container_it); #line 78 "/home/jens/Source/shotwell/src/Event.vala" _g_object_unref0 (event); #line 78 "/home/jens/Source/shotwell/src/Event.vala" return result; #line 1885 "Event.c" } #line 76 "/home/jens/Source/shotwell/src/Event.vala" _g_object_unref0 (container); #line 1889 "Event.c" } #line 76 "/home/jens/Source/shotwell/src/Event.vala" _g_object_unref0 (_container_it); #line 1893 "Event.c" } #line 81 "/home/jens/Source/shotwell/src/Event.vala" result = NULL; #line 81 "/home/jens/Source/shotwell/src/Event.vala" _g_object_unref0 (event); #line 81 "/home/jens/Source/shotwell/src/Event.vala" return result; #line 1901 "Event.c" } GeeCollection* event_source_collection_get_no_event_objects (EventSourceCollection* self) { GeeCollection* result = NULL; ViewCollection* _tmp0_; GeeCollection* _tmp1_; #line 84 "/home/jens/Source/shotwell/src/Event.vala" g_return_val_if_fail (IS_EVENT_SOURCE_COLLECTION (self), NULL); #line 85 "/home/jens/Source/shotwell/src/Event.vala" _tmp0_ = self->priv->no_event; #line 85 "/home/jens/Source/shotwell/src/Event.vala" _tmp1_ = view_collection_get_sources (_tmp0_); #line 85 "/home/jens/Source/shotwell/src/Event.vala" result = _tmp1_; #line 85 "/home/jens/Source/shotwell/src/Event.vala" return result; #line 1921 "Event.c" } static void event_source_collection_on_no_event_collection_altered (EventSourceCollection* self, GeeIterable* added, GeeIterable* removed) { #line 88 "/home/jens/Source/shotwell/src/Event.vala" g_return_if_fail (IS_EVENT_SOURCE_COLLECTION (self)); #line 88 "/home/jens/Source/shotwell/src/Event.vala" g_return_if_fail ((added == NULL) || GEE_IS_ITERABLE (added)); #line 88 "/home/jens/Source/shotwell/src/Event.vala" g_return_if_fail ((removed == NULL) || GEE_IS_ITERABLE (removed)); #line 90 "/home/jens/Source/shotwell/src/Event.vala" g_signal_emit (self, event_source_collection_signals[EVENT_SOURCE_COLLECTION_NO_EVENT_COLLECTION_ALTERED_SIGNAL], 0); #line 1938 "Event.c" } static gboolean event_source_collection_no_event_view_manager_real_include_in_view (ViewManager* base, DataSource* source) { EventSourceCollectionNoEventViewManager * self; gboolean result = FALSE; gboolean _tmp0_ = FALSE; EventID _tmp1_ = {0}; gint64 _tmp2_; #line 13 "/home/jens/Source/shotwell/src/Event.vala" self = G_TYPE_CHECK_INSTANCE_CAST (base, EVENT_SOURCE_COLLECTION_TYPE_NO_EVENT_VIEW_MANAGER, EventSourceCollectionNoEventViewManager); #line 13 "/home/jens/Source/shotwell/src/Event.vala" g_return_val_if_fail (IS_DATA_SOURCE (source), FALSE); #line 15 "/home/jens/Source/shotwell/src/Event.vala" media_source_get_event_id (G_TYPE_CHECK_INSTANCE_CAST (source, TYPE_MEDIA_SOURCE, MediaSource), &_tmp1_); #line 15 "/home/jens/Source/shotwell/src/Event.vala" _tmp2_ = _tmp1_.id; #line 15 "/home/jens/Source/shotwell/src/Event.vala" if (_tmp2_ != EVENT_ID_INVALID) { #line 15 "/home/jens/Source/shotwell/src/Event.vala" _tmp0_ = FALSE; #line 1963 "Event.c" } else { #line 16 "/home/jens/Source/shotwell/src/Event.vala" _tmp0_ = VIEW_MANAGER_CLASS (event_source_collection_no_event_view_manager_parent_class)->include_in_view (G_TYPE_CHECK_INSTANCE_CAST (self, TYPE_VIEW_MANAGER, ViewManager), source); #line 1967 "Event.c" } #line 15 "/home/jens/Source/shotwell/src/Event.vala" result = _tmp0_; #line 15 "/home/jens/Source/shotwell/src/Event.vala" return result; #line 1973 "Event.c" } static DataView* event_source_collection_no_event_view_manager_real_create_view (ViewManager* base, DataSource* source) { EventSourceCollectionNoEventViewManager * self; DataView* result = NULL; ThumbnailView* _tmp0_; #line 19 "/home/jens/Source/shotwell/src/Event.vala" self = G_TYPE_CHECK_INSTANCE_CAST (base, EVENT_SOURCE_COLLECTION_TYPE_NO_EVENT_VIEW_MANAGER, EventSourceCollectionNoEventViewManager); #line 19 "/home/jens/Source/shotwell/src/Event.vala" g_return_val_if_fail (IS_DATA_SOURCE (source), NULL); #line 20 "/home/jens/Source/shotwell/src/Event.vala" _tmp0_ = thumbnail_view_new (G_TYPE_CHECK_INSTANCE_CAST (G_TYPE_CHECK_INSTANCE_CAST (source, TYPE_MEDIA_SOURCE, MediaSource), TYPE_THUMBNAIL_SOURCE, ThumbnailSource)); #line 20 "/home/jens/Source/shotwell/src/Event.vala" result = G_TYPE_CHECK_INSTANCE_CAST (_tmp0_, TYPE_DATA_VIEW, DataView); #line 20 "/home/jens/Source/shotwell/src/Event.vala" return result; #line 1994 "Event.c" } static EventSourceCollectionNoEventViewManager* event_source_collection_no_event_view_manager_construct (GType object_type) { EventSourceCollectionNoEventViewManager* self = NULL; #line 12 "/home/jens/Source/shotwell/src/Event.vala" self = (EventSourceCollectionNoEventViewManager*) view_manager_construct (object_type); #line 12 "/home/jens/Source/shotwell/src/Event.vala" return self; #line 2006 "Event.c" } static EventSourceCollectionNoEventViewManager* event_source_collection_no_event_view_manager_new (void) { #line 12 "/home/jens/Source/shotwell/src/Event.vala" return event_source_collection_no_event_view_manager_construct (EVENT_SOURCE_COLLECTION_TYPE_NO_EVENT_VIEW_MANAGER); #line 2015 "Event.c" } static void event_source_collection_no_event_view_manager_class_init (EventSourceCollectionNoEventViewManagerClass * klass) { #line 12 "/home/jens/Source/shotwell/src/Event.vala" event_source_collection_no_event_view_manager_parent_class = g_type_class_peek_parent (klass); #line 12 "/home/jens/Source/shotwell/src/Event.vala" ((ViewManagerClass *) klass)->include_in_view = (gboolean (*) (ViewManager *, DataSource*)) event_source_collection_no_event_view_manager_real_include_in_view; #line 12 "/home/jens/Source/shotwell/src/Event.vala" ((ViewManagerClass *) klass)->create_view = (DataView* (*) (ViewManager *, DataSource*)) event_source_collection_no_event_view_manager_real_create_view; #line 2028 "Event.c" } static void event_source_collection_no_event_view_manager_instance_init (EventSourceCollectionNoEventViewManager * self) { } static GType event_source_collection_no_event_view_manager_get_type (void) { static volatile gsize event_source_collection_no_event_view_manager_type_id__volatile = 0; if (g_once_init_enter (&event_source_collection_no_event_view_manager_type_id__volatile)) { static const GTypeInfo g_define_type_info = { sizeof (EventSourceCollectionNoEventViewManagerClass), (GBaseInitFunc) NULL, (GBaseFinalizeFunc) NULL, (GClassInitFunc) event_source_collection_no_event_view_manager_class_init, (GClassFinalizeFunc) NULL, NULL, sizeof (EventSourceCollectionNoEventViewManager), 0, (GInstanceInitFunc) event_source_collection_no_event_view_manager_instance_init, NULL }; GType event_source_collection_no_event_view_manager_type_id; event_source_collection_no_event_view_manager_type_id = g_type_register_static (TYPE_VIEW_MANAGER, "EventSourceCollectionNoEventViewManager", &g_define_type_info, 0); g_once_init_leave (&event_source_collection_no_event_view_manager_type_id__volatile, event_source_collection_no_event_view_manager_type_id); } return event_source_collection_no_event_view_manager_type_id__volatile; } static void event_source_collection_class_init (EventSourceCollectionClass * klass) { #line 7 "/home/jens/Source/shotwell/src/Event.vala" event_source_collection_parent_class = g_type_class_peek_parent (klass); #line 7 "/home/jens/Source/shotwell/src/Event.vala" ((DataCollectionClass *) klass)->finalize = event_source_collection_finalize; #line 7 "/home/jens/Source/shotwell/src/Event.vala" g_type_class_add_private (klass, sizeof (EventSourceCollectionPrivate)); #line 7 "/home/jens/Source/shotwell/src/Event.vala" ((SourceCollectionClass *) klass)->holds_type_of_source = (gboolean (*) (SourceCollection *, DataSource*)) event_source_collection_real_holds_type_of_source; #line 7 "/home/jens/Source/shotwell/src/Event.vala" ((ContainerSourceCollectionClass *) klass)->get_containers_holding_source = (GeeCollection* (*) (ContainerSourceCollection *, DataSource*)) event_source_collection_real_get_containers_holding_source; #line 7 "/home/jens/Source/shotwell/src/Event.vala" ((ContainerSourceCollectionClass *) klass)->convert_backlink_to_container = (ContainerSource* (*) (ContainerSourceCollection *, SourceBacklink*)) event_source_collection_real_convert_backlink_to_container; #line 7 "/home/jens/Source/shotwell/src/Event.vala" event_source_collection_signals[EVENT_SOURCE_COLLECTION_NO_EVENT_COLLECTION_ALTERED_SIGNAL] = g_signal_new ("no-event-collection-altered", TYPE_EVENT_SOURCE_COLLECTION, G_SIGNAL_RUN_LAST, 0, NULL, NULL, g_cclosure_marshal_VOID__VOID, G_TYPE_NONE, 0); #line 2069 "Event.c" } static void event_source_collection_instance_init (EventSourceCollection * self) { #line 7 "/home/jens/Source/shotwell/src/Event.vala" self->priv = EVENT_SOURCE_COLLECTION_GET_PRIVATE (self); #line 2078 "Event.c" } static void event_source_collection_finalize (DataCollection * obj) { EventSourceCollection * self; #line 7 "/home/jens/Source/shotwell/src/Event.vala" self = G_TYPE_CHECK_INSTANCE_CAST (obj, TYPE_EVENT_SOURCE_COLLECTION, EventSourceCollection); #line 10 "/home/jens/Source/shotwell/src/Event.vala" _data_collection_unref0 (self->priv->no_event); #line 7 "/home/jens/Source/shotwell/src/Event.vala" DATA_COLLECTION_CLASS (event_source_collection_parent_class)->finalize (obj); #line 2092 "Event.c" } GType event_source_collection_get_type (void) { static volatile gsize event_source_collection_type_id__volatile = 0; if (g_once_init_enter (&event_source_collection_type_id__volatile)) { static const GTypeInfo g_define_type_info = { sizeof (EventSourceCollectionClass), (GBaseInitFunc) NULL, (GBaseFinalizeFunc) NULL, (GClassInitFunc) event_source_collection_class_init, (GClassFinalizeFunc) NULL, NULL, sizeof (EventSourceCollection), 0, (GInstanceInitFunc) event_source_collection_instance_init, NULL }; GType event_source_collection_type_id; event_source_collection_type_id = g_type_register_static (TYPE_CONTAINER_SOURCE_COLLECTION, "EventSourceCollection", &g_define_type_info, 0); g_once_init_leave (&event_source_collection_type_id__volatile, event_source_collection_type_id); } return event_source_collection_type_id__volatile; } static void _event_on_primary_thumbnail_altered_thumbnail_source_thumbnail_altered (ThumbnailSource* _sender, gpointer self) { #line 238 "/home/jens/Source/shotwell/src/Event.vala" event_on_primary_thumbnail_altered ((Event*) self); #line 2116 "Event.c" } static void _event_on_media_altered_data_collection_items_altered (DataCollection* _sender, GeeMap* items, gpointer self) { #line 240 "/home/jens/Source/shotwell/src/Event.vala" event_on_media_altered ((Event*) self, items); #line 2127 "Event.c" } static void _event_on_media_removed_data_collection_items_removed (DataCollection* _sender, GeeIterable* removed, gpointer self) { #line 241 "/home/jens/Source/shotwell/src/Event.vala" event_on_media_removed ((Event*) self, removed); #line 2138 "Event.c" } static void _event_on_media_added_data_collection_items_added (DataCollection* _sender, GeeIterable* added, gpointer self) { #line 242 "/home/jens/Source/shotwell/src/Event.vala" event_on_media_added ((Event*) self, added); #line 2149 "Event.c" } static void _event_on_media_destroyed_source_collection_item_destroyed (SourceCollection* _sender, DataSource* source, gpointer self) { #line 244 "/home/jens/Source/shotwell/src/Event.vala" event_on_media_destroyed ((Event*) self, source); #line 2160 "Event.c" } static gint64 _event_view_comparator_comparator (void* a, void* b, gpointer self) { gint64 result; result = event_view_comparator (a, b); #line 201 "/home/jens/Source/shotwell/src/Event.vala" return result; #line 2173 "Event.c" } static gboolean _event_view_comparator_predicate_comparator_predicate (DataObject* object, Alteration* alteration, gpointer self) { gboolean result; result = event_view_comparator_predicate (object, alteration); #line 201 "/home/jens/Source/shotwell/src/Event.vala" return result; #line 2186 "Event.c" } static Event* event_construct (GType object_type, EventRow* event_row, gint64 object_id) { Event * self = NULL; const gchar* _tmp0_; gchar* _tmp1_; EventID _tmp2_; const gchar* _tmp3_; gchar* _tmp4_; const gchar* _tmp5_; gchar* _tmp6_; GeeCollection* event_source_ids = NULL; MediaCollectionRegistry* _tmp7_; MediaCollectionRegistry* _tmp8_; EventID _tmp9_; GeeCollection* _tmp10_; GeeCollection* _tmp11_; GeeArrayList* event_thumbs = NULL; GeeArrayList* _tmp12_; EventID _tmp28_; gint64 _tmp29_; gchar* _tmp30_; gchar* _tmp31_; gchar* _tmp32_; gchar* _tmp33_; ViewCollection* _tmp34_; ViewCollection* _tmp35_; ViewCollection* _tmp36_; GeeArrayList* _tmp37_; GeeCollection* _tmp38_; GeeCollection* _tmp39_; GeeArrayList* _tmp40_; gint _tmp41_; gint _tmp42_; MediaCollectionRegistry* _tmp47_; MediaCollectionRegistry* _tmp48_; const gchar* _tmp49_; MediaSource* _tmp50_; gboolean _tmp51_ = FALSE; MediaSource* _tmp52_; MediaSource* _tmp63_; ViewCollection* _tmp65_; ViewCollection* _tmp66_; ViewCollection* _tmp67_; LibraryPhotoSourceCollection* _tmp68_; VideoSourceCollection* _tmp69_; #line 180 "/home/jens/Source/shotwell/src/Event.vala" g_return_val_if_fail (IS_EVENT_ROW (event_row), NULL); #line 181 "/home/jens/Source/shotwell/src/Event.vala" self = (Event*) event_source_construct (object_type, object_id); #line 184 "/home/jens/Source/shotwell/src/Event.vala" _tmp0_ = event_row->name; #line 184 "/home/jens/Source/shotwell/src/Event.vala" _tmp1_ = event_prep_event_name (_tmp0_); #line 184 "/home/jens/Source/shotwell/src/Event.vala" _g_free0 (event_row->name); #line 184 "/home/jens/Source/shotwell/src/Event.vala" event_row->name = _tmp1_; #line 186 "/home/jens/Source/shotwell/src/Event.vala" _tmp2_ = event_row->event_id; #line 186 "/home/jens/Source/shotwell/src/Event.vala" self->priv->event_id = _tmp2_; #line 187 "/home/jens/Source/shotwell/src/Event.vala" _tmp3_ = event_row->name; #line 187 "/home/jens/Source/shotwell/src/Event.vala" _tmp4_ = g_strdup (_tmp3_); #line 187 "/home/jens/Source/shotwell/src/Event.vala" _g_free0 (self->priv->raw_name); #line 187 "/home/jens/Source/shotwell/src/Event.vala" self->priv->raw_name = _tmp4_; #line 188 "/home/jens/Source/shotwell/src/Event.vala" _tmp5_ = event_row->comment; #line 188 "/home/jens/Source/shotwell/src/Event.vala" _tmp6_ = g_strdup (_tmp5_); #line 188 "/home/jens/Source/shotwell/src/Event.vala" _g_free0 (self->priv->comment); #line 188 "/home/jens/Source/shotwell/src/Event.vala" self->priv->comment = _tmp6_; #line 190 "/home/jens/Source/shotwell/src/Event.vala" _tmp7_ = media_collection_registry_get_instance (); #line 190 "/home/jens/Source/shotwell/src/Event.vala" _tmp8_ = _tmp7_; #line 190 "/home/jens/Source/shotwell/src/Event.vala" _tmp9_ = self->priv->event_id; #line 190 "/home/jens/Source/shotwell/src/Event.vala" _tmp10_ = media_collection_registry_get_source_ids_for_event_id (_tmp8_, &_tmp9_); #line 190 "/home/jens/Source/shotwell/src/Event.vala" _tmp11_ = _tmp10_; #line 190 "/home/jens/Source/shotwell/src/Event.vala" _media_collection_registry_unref0 (_tmp8_); #line 190 "/home/jens/Source/shotwell/src/Event.vala" event_source_ids = _tmp11_; #line 192 "/home/jens/Source/shotwell/src/Event.vala" _tmp12_ = gee_array_list_new (TYPE_THUMBNAIL_VIEW, (GBoxedCopyFunc) g_object_ref, (GDestroyNotify) g_object_unref, NULL, NULL, NULL); #line 192 "/home/jens/Source/shotwell/src/Event.vala" event_thumbs = _tmp12_; #line 2288 "Event.c" { GeeIterator* _current_source_id_it = NULL; GeeCollection* _tmp13_; GeeIterator* _tmp14_; #line 193 "/home/jens/Source/shotwell/src/Event.vala" _tmp13_ = event_source_ids; #line 193 "/home/jens/Source/shotwell/src/Event.vala" _tmp14_ = gee_iterable_iterator (G_TYPE_CHECK_INSTANCE_CAST (_tmp13_, GEE_TYPE_ITERABLE, GeeIterable)); #line 193 "/home/jens/Source/shotwell/src/Event.vala" _current_source_id_it = _tmp14_; #line 193 "/home/jens/Source/shotwell/src/Event.vala" while (TRUE) { #line 2301 "Event.c" GeeIterator* _tmp15_; gchar* current_source_id = NULL; GeeIterator* _tmp16_; gpointer _tmp17_; MediaSource* media = NULL; MediaCollectionRegistry* _tmp18_; MediaCollectionRegistry* _tmp19_; const gchar* _tmp20_; MediaSource* _tmp21_; MediaSource* _tmp22_; MediaSource* _tmp23_; #line 193 "/home/jens/Source/shotwell/src/Event.vala" _tmp15_ = _current_source_id_it; #line 193 "/home/jens/Source/shotwell/src/Event.vala" if (!gee_iterator_next (_tmp15_)) { #line 193 "/home/jens/Source/shotwell/src/Event.vala" break; #line 2319 "Event.c" } #line 193 "/home/jens/Source/shotwell/src/Event.vala" _tmp16_ = _current_source_id_it; #line 193 "/home/jens/Source/shotwell/src/Event.vala" _tmp17_ = gee_iterator_get (_tmp16_); #line 193 "/home/jens/Source/shotwell/src/Event.vala" current_source_id = (gchar*) _tmp17_; #line 194 "/home/jens/Source/shotwell/src/Event.vala" _tmp18_ = media_collection_registry_get_instance (); #line 194 "/home/jens/Source/shotwell/src/Event.vala" _tmp19_ = _tmp18_; #line 194 "/home/jens/Source/shotwell/src/Event.vala" _tmp20_ = current_source_id; #line 194 "/home/jens/Source/shotwell/src/Event.vala" _tmp21_ = media_collection_registry_fetch_media (_tmp19_, _tmp20_); #line 194 "/home/jens/Source/shotwell/src/Event.vala" _tmp22_ = _tmp21_; #line 194 "/home/jens/Source/shotwell/src/Event.vala" _media_collection_registry_unref0 (_tmp19_); #line 194 "/home/jens/Source/shotwell/src/Event.vala" media = _tmp22_; #line 196 "/home/jens/Source/shotwell/src/Event.vala" _tmp23_ = media; #line 196 "/home/jens/Source/shotwell/src/Event.vala" if (_tmp23_ != NULL) { #line 2345 "Event.c" GeeArrayList* _tmp24_; MediaSource* _tmp25_; ThumbnailView* _tmp26_; ThumbnailView* _tmp27_; #line 197 "/home/jens/Source/shotwell/src/Event.vala" _tmp24_ = event_thumbs; #line 197 "/home/jens/Source/shotwell/src/Event.vala" _tmp25_ = media; #line 197 "/home/jens/Source/shotwell/src/Event.vala" _tmp26_ = thumbnail_view_new (G_TYPE_CHECK_INSTANCE_CAST (_tmp25_, TYPE_THUMBNAIL_SOURCE, ThumbnailSource)); #line 197 "/home/jens/Source/shotwell/src/Event.vala" _tmp27_ = _tmp26_; #line 197 "/home/jens/Source/shotwell/src/Event.vala" gee_abstract_collection_add (G_TYPE_CHECK_INSTANCE_CAST (_tmp24_, GEE_TYPE_ABSTRACT_COLLECTION, GeeAbstractCollection), _tmp27_); #line 197 "/home/jens/Source/shotwell/src/Event.vala" _g_object_unref0 (_tmp27_); #line 2362 "Event.c" } #line 193 "/home/jens/Source/shotwell/src/Event.vala" _g_object_unref0 (media); #line 193 "/home/jens/Source/shotwell/src/Event.vala" _g_free0 (current_source_id); #line 2368 "Event.c" } #line 193 "/home/jens/Source/shotwell/src/Event.vala" _g_object_unref0 (_current_source_id_it); #line 2372 "Event.c" } #line 200 "/home/jens/Source/shotwell/src/Event.vala" _tmp28_ = self->priv->event_id; #line 200 "/home/jens/Source/shotwell/src/Event.vala" _tmp29_ = _tmp28_.id; #line 200 "/home/jens/Source/shotwell/src/Event.vala" _tmp30_ = g_strdup_printf ("%" G_GINT64_FORMAT, _tmp29_); #line 200 "/home/jens/Source/shotwell/src/Event.vala" _tmp31_ = _tmp30_; #line 200 "/home/jens/Source/shotwell/src/Event.vala" _tmp32_ = g_strdup_printf ("ViewCollection for Event %s", _tmp31_); #line 200 "/home/jens/Source/shotwell/src/Event.vala" _tmp33_ = _tmp32_; #line 200 "/home/jens/Source/shotwell/src/Event.vala" _tmp34_ = view_collection_new (_tmp33_); #line 200 "/home/jens/Source/shotwell/src/Event.vala" _data_collection_unref0 (self->priv->view); #line 200 "/home/jens/Source/shotwell/src/Event.vala" self->priv->view = _tmp34_; #line 200 "/home/jens/Source/shotwell/src/Event.vala" _g_free0 (_tmp33_); #line 200 "/home/jens/Source/shotwell/src/Event.vala" _g_free0 (_tmp31_); #line 201 "/home/jens/Source/shotwell/src/Event.vala" _tmp35_ = self->priv->view; #line 201 "/home/jens/Source/shotwell/src/Event.vala" data_collection_set_comparator (G_TYPE_CHECK_INSTANCE_CAST (_tmp35_, TYPE_DATA_COLLECTION, DataCollection), _event_view_comparator_comparator, NULL, _event_view_comparator_predicate_comparator_predicate, NULL); #line 202 "/home/jens/Source/shotwell/src/Event.vala" _tmp36_ = self->priv->view; #line 202 "/home/jens/Source/shotwell/src/Event.vala" _tmp37_ = event_thumbs; #line 202 "/home/jens/Source/shotwell/src/Event.vala" _tmp38_ = data_collection_add_many (G_TYPE_CHECK_INSTANCE_CAST (_tmp36_, TYPE_DATA_COLLECTION, DataCollection), G_TYPE_CHECK_INSTANCE_CAST (_tmp37_, GEE_TYPE_COLLECTION, GeeCollection), NULL, NULL); #line 202 "/home/jens/Source/shotwell/src/Event.vala" _tmp39_ = _tmp38_; #line 202 "/home/jens/Source/shotwell/src/Event.vala" _g_object_unref0 (_tmp39_); #line 206 "/home/jens/Source/shotwell/src/Event.vala" _tmp40_ = event_thumbs; #line 206 "/home/jens/Source/shotwell/src/Event.vala" _tmp41_ = gee_abstract_collection_get_size (G_TYPE_CHECK_INSTANCE_CAST (_tmp40_, GEE_TYPE_ABSTRACT_COLLECTION, GeeAbstractCollection)); #line 206 "/home/jens/Source/shotwell/src/Event.vala" _tmp42_ = _tmp41_; #line 206 "/home/jens/Source/shotwell/src/Event.vala" if (_tmp42_ > 0) { #line 2418 "Event.c" EventSourceCollection* _tmp43_; GeeArrayList* _tmp44_; EventSourceCollection* _tmp45_; GeeArrayList* _tmp46_; #line 207 "/home/jens/Source/shotwell/src/Event.vala" _tmp43_ = event_global; #line 207 "/home/jens/Source/shotwell/src/Event.vala" _tmp44_ = event_thumbs; #line 207 "/home/jens/Source/shotwell/src/Event.vala" container_source_collection_notify_container_contents_added (G_TYPE_CHECK_INSTANCE_CAST (_tmp43_, TYPE_CONTAINER_SOURCE_COLLECTION, ContainerSourceCollection), G_TYPE_CHECK_INSTANCE_CAST (self, TYPE_CONTAINER_SOURCE, ContainerSource), G_TYPE_CHECK_INSTANCE_CAST (_tmp44_, GEE_TYPE_COLLECTION, GeeCollection), FALSE); #line 208 "/home/jens/Source/shotwell/src/Event.vala" _tmp45_ = event_global; #line 208 "/home/jens/Source/shotwell/src/Event.vala" _tmp46_ = event_thumbs; #line 208 "/home/jens/Source/shotwell/src/Event.vala" container_source_collection_notify_container_contents_altered (G_TYPE_CHECK_INSTANCE_CAST (_tmp45_, TYPE_CONTAINER_SOURCE_COLLECTION, ContainerSourceCollection), G_TYPE_CHECK_INSTANCE_CAST (self, TYPE_CONTAINER_SOURCE, ContainerSource), G_TYPE_CHECK_INSTANCE_CAST (_tmp46_, GEE_TYPE_COLLECTION, GeeCollection), FALSE, NULL, FALSE); #line 2435 "Event.c" } #line 213 "/home/jens/Source/shotwell/src/Event.vala" _tmp47_ = media_collection_registry_get_instance (); #line 213 "/home/jens/Source/shotwell/src/Event.vala" _tmp48_ = _tmp47_; #line 213 "/home/jens/Source/shotwell/src/Event.vala" _tmp49_ = event_row->primary_source_id; #line 213 "/home/jens/Source/shotwell/src/Event.vala" _tmp50_ = media_collection_registry_fetch_media (_tmp48_, _tmp49_); #line 213 "/home/jens/Source/shotwell/src/Event.vala" _g_object_unref0 (self->priv->primary_source); #line 213 "/home/jens/Source/shotwell/src/Event.vala" self->priv->primary_source = _tmp50_; #line 213 "/home/jens/Source/shotwell/src/Event.vala" _media_collection_registry_unref0 (_tmp48_); #line 214 "/home/jens/Source/shotwell/src/Event.vala" _tmp52_ = self->priv->primary_source; #line 214 "/home/jens/Source/shotwell/src/Event.vala" if (_tmp52_ == NULL) { #line 2455 "Event.c" ViewCollection* _tmp53_; #line 214 "/home/jens/Source/shotwell/src/Event.vala" _tmp53_ = self->priv->view; #line 214 "/home/jens/Source/shotwell/src/Event.vala" _tmp51_ = data_collection_get_count (G_TYPE_CHECK_INSTANCE_CAST (_tmp53_, TYPE_DATA_COLLECTION, DataCollection)) > 0; #line 2461 "Event.c" } else { #line 214 "/home/jens/Source/shotwell/src/Event.vala" _tmp51_ = FALSE; #line 2465 "Event.c" } #line 214 "/home/jens/Source/shotwell/src/Event.vala" if (_tmp51_) { #line 2469 "Event.c" ViewCollection* _tmp54_; DataView* _tmp55_; DataView* _tmp56_; DataSource* _tmp57_; EventTable* _tmp58_; EventID _tmp59_; MediaSource* _tmp60_; gchar* _tmp61_; gchar* _tmp62_; #line 215 "/home/jens/Source/shotwell/src/Event.vala" _tmp54_ = self->priv->view; #line 215 "/home/jens/Source/shotwell/src/Event.vala" _tmp55_ = view_collection_get_first_unrejected (_tmp54_); #line 215 "/home/jens/Source/shotwell/src/Event.vala" _tmp56_ = G_TYPE_CHECK_INSTANCE_CAST (_tmp55_, TYPE_DATA_VIEW, DataView); #line 215 "/home/jens/Source/shotwell/src/Event.vala" _tmp57_ = data_view_get_source (_tmp56_); #line 215 "/home/jens/Source/shotwell/src/Event.vala" _g_object_unref0 (self->priv->primary_source); #line 215 "/home/jens/Source/shotwell/src/Event.vala" self->priv->primary_source = G_TYPE_CHECK_INSTANCE_CAST (_tmp57_, TYPE_MEDIA_SOURCE, MediaSource); #line 215 "/home/jens/Source/shotwell/src/Event.vala" _g_object_unref0 (_tmp56_); #line 216 "/home/jens/Source/shotwell/src/Event.vala" _tmp58_ = event_event_table; #line 216 "/home/jens/Source/shotwell/src/Event.vala" _tmp59_ = self->priv->event_id; #line 216 "/home/jens/Source/shotwell/src/Event.vala" _tmp60_ = self->priv->primary_source; #line 216 "/home/jens/Source/shotwell/src/Event.vala" _tmp61_ = data_source_get_source_id (G_TYPE_CHECK_INSTANCE_CAST (_tmp60_, TYPE_DATA_SOURCE, DataSource)); #line 216 "/home/jens/Source/shotwell/src/Event.vala" _tmp62_ = _tmp61_; #line 216 "/home/jens/Source/shotwell/src/Event.vala" event_table_set_primary_source_id (_tmp58_, &_tmp59_, _tmp62_); #line 216 "/home/jens/Source/shotwell/src/Event.vala" _g_free0 (_tmp62_); #line 2507 "Event.c" } #line 220 "/home/jens/Source/shotwell/src/Event.vala" _tmp63_ = self->priv->primary_source; #line 220 "/home/jens/Source/shotwell/src/Event.vala" if (_tmp63_ != NULL) { #line 2513 "Event.c" MediaSource* _tmp64_; #line 221 "/home/jens/Source/shotwell/src/Event.vala" _tmp64_ = self->priv->primary_source; #line 221 "/home/jens/Source/shotwell/src/Event.vala" g_signal_connect_object (G_TYPE_CHECK_INSTANCE_CAST (_tmp64_, TYPE_THUMBNAIL_SOURCE, ThumbnailSource), "thumbnail-altered", (GCallback) _event_on_primary_thumbnail_altered_thumbnail_source_thumbnail_altered, self, 0); #line 2519 "Event.c" } #line 224 "/home/jens/Source/shotwell/src/Event.vala" _tmp65_ = self->priv->view; #line 224 "/home/jens/Source/shotwell/src/Event.vala" g_signal_connect_object (G_TYPE_CHECK_INSTANCE_CAST (_tmp65_, TYPE_DATA_COLLECTION, DataCollection), "items-added", (GCallback) _event_on_media_added_data_collection_items_added, self, 0); #line 225 "/home/jens/Source/shotwell/src/Event.vala" _tmp66_ = self->priv->view; #line 225 "/home/jens/Source/shotwell/src/Event.vala" g_signal_connect_object (G_TYPE_CHECK_INSTANCE_CAST (_tmp66_, TYPE_DATA_COLLECTION, DataCollection), "items-removed", (GCallback) _event_on_media_removed_data_collection_items_removed, self, 0); #line 226 "/home/jens/Source/shotwell/src/Event.vala" _tmp67_ = self->priv->view; #line 226 "/home/jens/Source/shotwell/src/Event.vala" g_signal_connect_object (G_TYPE_CHECK_INSTANCE_CAST (_tmp67_, TYPE_DATA_COLLECTION, DataCollection), "items-altered", (GCallback) _event_on_media_altered_data_collection_items_altered, self, 0); #line 230 "/home/jens/Source/shotwell/src/Event.vala" _tmp68_ = library_photo_global; #line 230 "/home/jens/Source/shotwell/src/Event.vala" g_signal_connect_object (G_TYPE_CHECK_INSTANCE_CAST (_tmp68_, TYPE_SOURCE_COLLECTION, SourceCollection), "item-destroyed", (GCallback) _event_on_media_destroyed_source_collection_item_destroyed, self, 0); #line 231 "/home/jens/Source/shotwell/src/Event.vala" _tmp69_ = video_global; #line 231 "/home/jens/Source/shotwell/src/Event.vala" g_signal_connect_object (G_TYPE_CHECK_INSTANCE_CAST (_tmp69_, TYPE_SOURCE_COLLECTION, SourceCollection), "item-destroyed", (GCallback) _event_on_media_destroyed_source_collection_item_destroyed, self, 0); #line 233 "/home/jens/Source/shotwell/src/Event.vala" event_update_indexable_keywords (self); #line 180 "/home/jens/Source/shotwell/src/Event.vala" _g_object_unref0 (event_thumbs); #line 180 "/home/jens/Source/shotwell/src/Event.vala" _g_object_unref0 (event_source_ids); #line 180 "/home/jens/Source/shotwell/src/Event.vala" return self; #line 2549 "Event.c" } static Event* event_new (EventRow* event_row, gint64 object_id) { #line 180 "/home/jens/Source/shotwell/src/Event.vala" return event_construct (TYPE_EVENT, event_row, object_id); #line 2559 "Event.c" } static gchar* event_real_get_typename (DataSource* base) { Event * self; gchar* result = NULL; gchar* _tmp0_; #line 248 "/home/jens/Source/shotwell/src/Event.vala" self = G_TYPE_CHECK_INSTANCE_CAST (base, TYPE_EVENT, Event); #line 249 "/home/jens/Source/shotwell/src/Event.vala" _tmp0_ = g_strdup (EVENT_TYPENAME); #line 249 "/home/jens/Source/shotwell/src/Event.vala" result = _tmp0_; #line 249 "/home/jens/Source/shotwell/src/Event.vala" return result; #line 2577 "Event.c" } static gint64 event_real_get_instance_id (DataSource* base) { Event * self; gint64 result = 0LL; EventID _tmp0_ = {0}; gint64 _tmp1_; #line 252 "/home/jens/Source/shotwell/src/Event.vala" self = G_TYPE_CHECK_INSTANCE_CAST (base, TYPE_EVENT, Event); #line 253 "/home/jens/Source/shotwell/src/Event.vala" event_get_event_id (self, &_tmp0_); #line 253 "/home/jens/Source/shotwell/src/Event.vala" _tmp1_ = _tmp0_.id; #line 253 "/home/jens/Source/shotwell/src/Event.vala" result = _tmp1_; #line 253 "/home/jens/Source/shotwell/src/Event.vala" return result; #line 2598 "Event.c" } static gchar* event_real_get_representative_id (ThumbnailSource* base) { Event * self; gchar* result = NULL; gchar* _tmp0_ = NULL; MediaSource* _tmp1_; #line 256 "/home/jens/Source/shotwell/src/Event.vala" self = G_TYPE_CHECK_INSTANCE_CAST (base, TYPE_EVENT, Event); #line 257 "/home/jens/Source/shotwell/src/Event.vala" _tmp1_ = self->priv->primary_source; #line 257 "/home/jens/Source/shotwell/src/Event.vala" if (_tmp1_ != NULL) { #line 2615 "Event.c" MediaSource* _tmp2_; gchar* _tmp3_; #line 257 "/home/jens/Source/shotwell/src/Event.vala" _tmp2_ = self->priv->primary_source; #line 257 "/home/jens/Source/shotwell/src/Event.vala" _tmp3_ = data_source_get_source_id (G_TYPE_CHECK_INSTANCE_CAST (_tmp2_, TYPE_DATA_SOURCE, DataSource)); #line 257 "/home/jens/Source/shotwell/src/Event.vala" _g_free0 (_tmp0_); #line 257 "/home/jens/Source/shotwell/src/Event.vala" _tmp0_ = _tmp3_; #line 2626 "Event.c" } else { gchar* _tmp4_; #line 257 "/home/jens/Source/shotwell/src/Event.vala" _tmp4_ = data_source_get_source_id (G_TYPE_CHECK_INSTANCE_CAST (self, TYPE_DATA_SOURCE, DataSource)); #line 257 "/home/jens/Source/shotwell/src/Event.vala" _g_free0 (_tmp0_); #line 257 "/home/jens/Source/shotwell/src/Event.vala" _tmp0_ = _tmp4_; #line 2635 "Event.c" } #line 257 "/home/jens/Source/shotwell/src/Event.vala" result = _tmp0_; #line 257 "/home/jens/Source/shotwell/src/Event.vala" return result; #line 2641 "Event.c" } static PhotoFileFormat event_real_get_preferred_thumbnail_format (ThumbnailSource* base) { Event * self; PhotoFileFormat result = 0; PhotoFileFormat _tmp0_ = 0; MediaSource* _tmp1_; #line 260 "/home/jens/Source/shotwell/src/Event.vala" self = G_TYPE_CHECK_INSTANCE_CAST (base, TYPE_EVENT, Event); #line 261 "/home/jens/Source/shotwell/src/Event.vala" _tmp1_ = self->priv->primary_source; #line 261 "/home/jens/Source/shotwell/src/Event.vala" if (_tmp1_ != NULL) { #line 2658 "Event.c" MediaSource* _tmp2_; #line 261 "/home/jens/Source/shotwell/src/Event.vala" _tmp2_ = self->priv->primary_source; #line 261 "/home/jens/Source/shotwell/src/Event.vala" _tmp0_ = thumbnail_source_get_preferred_thumbnail_format (G_TYPE_CHECK_INSTANCE_CAST (_tmp2_, TYPE_THUMBNAIL_SOURCE, ThumbnailSource)); #line 2664 "Event.c" } else { #line 262 "/home/jens/Source/shotwell/src/Event.vala" _tmp0_ = photo_file_format_get_system_default_format (); #line 2668 "Event.c" } #line 261 "/home/jens/Source/shotwell/src/Event.vala" result = _tmp0_; #line 261 "/home/jens/Source/shotwell/src/Event.vala" return result; #line 2674 "Event.c" } static GdkPixbuf* event_real_create_thumbnail (ThumbnailSource* base, gint scale, GError** error) { Event * self; GdkPixbuf* result = NULL; GdkPixbuf* _tmp0_ = NULL; MediaSource* _tmp1_; GError * _inner_error_ = NULL; #line 265 "/home/jens/Source/shotwell/src/Event.vala" self = G_TYPE_CHECK_INSTANCE_CAST (base, TYPE_EVENT, Event); #line 266 "/home/jens/Source/shotwell/src/Event.vala" _tmp1_ = self->priv->primary_source; #line 266 "/home/jens/Source/shotwell/src/Event.vala" if (_tmp1_ != NULL) { #line 2694 "Event.c" MediaSource* _tmp2_; GdkPixbuf* _tmp3_; #line 266 "/home/jens/Source/shotwell/src/Event.vala" _tmp2_ = self->priv->primary_source; #line 266 "/home/jens/Source/shotwell/src/Event.vala" _tmp3_ = thumbnail_source_create_thumbnail (G_TYPE_CHECK_INSTANCE_CAST (_tmp2_, TYPE_THUMBNAIL_SOURCE, ThumbnailSource), scale, &_inner_error_); #line 266 "/home/jens/Source/shotwell/src/Event.vala" _g_object_unref0 (_tmp0_); #line 266 "/home/jens/Source/shotwell/src/Event.vala" _tmp0_ = _tmp3_; #line 266 "/home/jens/Source/shotwell/src/Event.vala" if (G_UNLIKELY (_inner_error_ != NULL)) { #line 266 "/home/jens/Source/shotwell/src/Event.vala" g_propagate_error (error, _inner_error_); #line 266 "/home/jens/Source/shotwell/src/Event.vala" _g_object_unref0 (_tmp0_); #line 266 "/home/jens/Source/shotwell/src/Event.vala" return NULL; #line 2713 "Event.c" } } else { #line 266 "/home/jens/Source/shotwell/src/Event.vala" _g_object_unref0 (_tmp0_); #line 266 "/home/jens/Source/shotwell/src/Event.vala" _tmp0_ = NULL; #line 2720 "Event.c" } #line 266 "/home/jens/Source/shotwell/src/Event.vala" result = _tmp0_; #line 266 "/home/jens/Source/shotwell/src/Event.vala" return result; #line 2726 "Event.c" } void event_init (ProgressMonitor monitor, void* monitor_target) { EventTable* _tmp0_; EventSourceCollection* _tmp1_; EventSourceCollection* _tmp2_; GeeArrayList* events = NULL; GeeArrayList* _tmp3_; GeeArrayList* unlinked = NULL; GeeArrayList* _tmp4_; GeeArrayList* event_rows = NULL; EventTable* _tmp5_; GeeArrayList* _tmp6_; gint count = 0; GeeArrayList* _tmp7_; gint _tmp8_; gint _tmp9_; EventSourceCollection* _tmp29_; GeeArrayList* _tmp30_; GeeCollection* _tmp31_; GeeCollection* _tmp32_; EventSourceCollection* _tmp33_; GeeArrayList* _tmp34_; #line 270 "/home/jens/Source/shotwell/src/Event.vala" _tmp0_ = event_table_get_instance (); #line 270 "/home/jens/Source/shotwell/src/Event.vala" _database_table_unref0 (event_event_table); #line 270 "/home/jens/Source/shotwell/src/Event.vala" event_event_table = _tmp0_; #line 271 "/home/jens/Source/shotwell/src/Event.vala" _tmp1_ = event_source_collection_new (); #line 271 "/home/jens/Source/shotwell/src/Event.vala" _data_collection_unref0 (event_global); #line 271 "/home/jens/Source/shotwell/src/Event.vala" event_global = _tmp1_; #line 272 "/home/jens/Source/shotwell/src/Event.vala" _tmp2_ = event_global; #line 272 "/home/jens/Source/shotwell/src/Event.vala" event_source_collection_init (_tmp2_); #line 275 "/home/jens/Source/shotwell/src/Event.vala" _tmp3_ = gee_array_list_new (TYPE_EVENT, (GBoxedCopyFunc) g_object_ref, (GDestroyNotify) g_object_unref, NULL, NULL, NULL); #line 275 "/home/jens/Source/shotwell/src/Event.vala" events = _tmp3_; #line 276 "/home/jens/Source/shotwell/src/Event.vala" _tmp4_ = gee_array_list_new (TYPE_EVENT, (GBoxedCopyFunc) g_object_ref, (GDestroyNotify) g_object_unref, NULL, NULL, NULL); #line 276 "/home/jens/Source/shotwell/src/Event.vala" unlinked = _tmp4_; #line 278 "/home/jens/Source/shotwell/src/Event.vala" _tmp5_ = event_event_table; #line 278 "/home/jens/Source/shotwell/src/Event.vala" _tmp6_ = event_table_get_events (_tmp5_); #line 278 "/home/jens/Source/shotwell/src/Event.vala" event_rows = _tmp6_; #line 279 "/home/jens/Source/shotwell/src/Event.vala" _tmp7_ = event_rows; #line 279 "/home/jens/Source/shotwell/src/Event.vala" _tmp8_ = gee_abstract_collection_get_size (G_TYPE_CHECK_INSTANCE_CAST (_tmp7_, GEE_TYPE_ABSTRACT_COLLECTION, GeeAbstractCollection)); #line 279 "/home/jens/Source/shotwell/src/Event.vala" _tmp9_ = _tmp8_; #line 279 "/home/jens/Source/shotwell/src/Event.vala" count = _tmp9_; #line 2792 "Event.c" { gint ctr = 0; #line 280 "/home/jens/Source/shotwell/src/Event.vala" ctr = 0; #line 2797 "Event.c" { gboolean _tmp10_ = FALSE; #line 280 "/home/jens/Source/shotwell/src/Event.vala" _tmp10_ = TRUE; #line 280 "/home/jens/Source/shotwell/src/Event.vala" while (TRUE) { #line 2804 "Event.c" gint _tmp12_; gint _tmp13_; Event* event = NULL; GeeArrayList* _tmp14_; gint _tmp15_; gpointer _tmp16_; EventRow* _tmp17_; Event* _tmp18_; Event* _tmp19_; Event* _tmp22_; Event* _tmp25_; EventSourceCollection* _tmp26_; GeeArrayList* _tmp27_; Event* _tmp28_; #line 280 "/home/jens/Source/shotwell/src/Event.vala" if (!_tmp10_) { #line 2821 "Event.c" gint _tmp11_; #line 280 "/home/jens/Source/shotwell/src/Event.vala" _tmp11_ = ctr; #line 280 "/home/jens/Source/shotwell/src/Event.vala" ctr = _tmp11_ + 1; #line 2827 "Event.c" } #line 280 "/home/jens/Source/shotwell/src/Event.vala" _tmp10_ = FALSE; #line 280 "/home/jens/Source/shotwell/src/Event.vala" _tmp12_ = ctr; #line 280 "/home/jens/Source/shotwell/src/Event.vala" _tmp13_ = count; #line 280 "/home/jens/Source/shotwell/src/Event.vala" if (!(_tmp12_ < _tmp13_)) { #line 280 "/home/jens/Source/shotwell/src/Event.vala" break; #line 2839 "Event.c" } #line 281 "/home/jens/Source/shotwell/src/Event.vala" _tmp14_ = event_rows; #line 281 "/home/jens/Source/shotwell/src/Event.vala" _tmp15_ = ctr; #line 281 "/home/jens/Source/shotwell/src/Event.vala" _tmp16_ = gee_abstract_list_get (G_TYPE_CHECK_INSTANCE_CAST (_tmp14_, GEE_TYPE_ABSTRACT_LIST, GeeAbstractList), _tmp15_); #line 281 "/home/jens/Source/shotwell/src/Event.vala" _tmp17_ = (EventRow*) _tmp16_; #line 281 "/home/jens/Source/shotwell/src/Event.vala" _tmp18_ = event_new (_tmp17_, DATA_OBJECT_INVALID_OBJECT_ID); #line 281 "/home/jens/Source/shotwell/src/Event.vala" _tmp19_ = _tmp18_; #line 281 "/home/jens/Source/shotwell/src/Event.vala" _event_row_unref0 (_tmp17_); #line 281 "/home/jens/Source/shotwell/src/Event.vala" event = _tmp19_; #line 282 "/home/jens/Source/shotwell/src/Event.vala" if (monitor != NULL) { #line 2859 "Event.c" gint _tmp20_; gint _tmp21_; #line 283 "/home/jens/Source/shotwell/src/Event.vala" _tmp20_ = ctr; #line 283 "/home/jens/Source/shotwell/src/Event.vala" _tmp21_ = count; #line 283 "/home/jens/Source/shotwell/src/Event.vala" monitor ((guint64) _tmp20_, (guint64) _tmp21_, TRUE, monitor_target); #line 2868 "Event.c" } #line 285 "/home/jens/Source/shotwell/src/Event.vala" _tmp22_ = event; #line 285 "/home/jens/Source/shotwell/src/Event.vala" if (event_source_get_media_count (G_TYPE_CHECK_INSTANCE_CAST (_tmp22_, TYPE_EVENT_SOURCE, EventSource)) != 0) { #line 2874 "Event.c" GeeArrayList* _tmp23_; Event* _tmp24_; #line 286 "/home/jens/Source/shotwell/src/Event.vala" _tmp23_ = events; #line 286 "/home/jens/Source/shotwell/src/Event.vala" _tmp24_ = event; #line 286 "/home/jens/Source/shotwell/src/Event.vala" gee_abstract_collection_add (G_TYPE_CHECK_INSTANCE_CAST (_tmp23_, GEE_TYPE_ABSTRACT_COLLECTION, GeeAbstractCollection), _tmp24_); #line 288 "/home/jens/Source/shotwell/src/Event.vala" _g_object_unref0 (event); #line 288 "/home/jens/Source/shotwell/src/Event.vala" continue; #line 2887 "Event.c" } #line 294 "/home/jens/Source/shotwell/src/Event.vala" _tmp25_ = event; #line 294 "/home/jens/Source/shotwell/src/Event.vala" _tmp26_ = event_global; #line 294 "/home/jens/Source/shotwell/src/Event.vala" data_source_rehydrate_backlinks (G_TYPE_CHECK_INSTANCE_CAST (_tmp25_, TYPE_DATA_SOURCE, DataSource), G_TYPE_CHECK_INSTANCE_CAST (_tmp26_, TYPE_SOURCE_COLLECTION, SourceCollection), NULL); #line 295 "/home/jens/Source/shotwell/src/Event.vala" _tmp27_ = unlinked; #line 295 "/home/jens/Source/shotwell/src/Event.vala" _tmp28_ = event; #line 295 "/home/jens/Source/shotwell/src/Event.vala" gee_abstract_collection_add (G_TYPE_CHECK_INSTANCE_CAST (_tmp27_, GEE_TYPE_ABSTRACT_COLLECTION, GeeAbstractCollection), _tmp28_); #line 280 "/home/jens/Source/shotwell/src/Event.vala" _g_object_unref0 (event); #line 2903 "Event.c" } } } #line 298 "/home/jens/Source/shotwell/src/Event.vala" _tmp29_ = event_global; #line 298 "/home/jens/Source/shotwell/src/Event.vala" _tmp30_ = events; #line 298 "/home/jens/Source/shotwell/src/Event.vala" _tmp31_ = data_collection_add_many (G_TYPE_CHECK_INSTANCE_CAST (_tmp29_, TYPE_DATA_COLLECTION, DataCollection), G_TYPE_CHECK_INSTANCE_CAST (_tmp30_, GEE_TYPE_COLLECTION, GeeCollection), NULL, NULL); #line 298 "/home/jens/Source/shotwell/src/Event.vala" _tmp32_ = _tmp31_; #line 298 "/home/jens/Source/shotwell/src/Event.vala" _g_object_unref0 (_tmp32_); #line 299 "/home/jens/Source/shotwell/src/Event.vala" _tmp33_ = event_global; #line 299 "/home/jens/Source/shotwell/src/Event.vala" _tmp34_ = unlinked; #line 299 "/home/jens/Source/shotwell/src/Event.vala" container_source_collection_init_add_many_unlinked (G_TYPE_CHECK_INSTANCE_CAST (_tmp33_, TYPE_CONTAINER_SOURCE_COLLECTION, ContainerSourceCollection), G_TYPE_CHECK_INSTANCE_CAST (_tmp34_, GEE_TYPE_COLLECTION, GeeCollection)); #line 269 "/home/jens/Source/shotwell/src/Event.vala" _g_object_unref0 (event_rows); #line 269 "/home/jens/Source/shotwell/src/Event.vala" _g_object_unref0 (unlinked); #line 269 "/home/jens/Source/shotwell/src/Event.vala" _g_object_unref0 (events); #line 2929 "Event.c" } void event_terminate (void) { } static gint64 event_view_comparator (void* a, void* b) { gint64 result = 0LL; DataSource* _tmp0_; MediaSource* _tmp1_; DataSource* _tmp2_; MediaSource* _tmp3_; gint64 _tmp4_; #line 306 "/home/jens/Source/shotwell/src/Event.vala" _tmp0_ = data_view_get_source (G_TYPE_CHECK_INSTANCE_CAST ((ThumbnailView*) a, TYPE_DATA_VIEW, DataView)); #line 306 "/home/jens/Source/shotwell/src/Event.vala" _tmp1_ = G_TYPE_CHECK_INSTANCE_CAST (_tmp0_, TYPE_MEDIA_SOURCE, MediaSource); #line 306 "/home/jens/Source/shotwell/src/Event.vala" _tmp2_ = data_view_get_source (G_TYPE_CHECK_INSTANCE_CAST ((ThumbnailView*) b, TYPE_DATA_VIEW, DataView)); #line 306 "/home/jens/Source/shotwell/src/Event.vala" _tmp3_ = G_TYPE_CHECK_INSTANCE_CAST (_tmp2_, TYPE_MEDIA_SOURCE, MediaSource); #line 306 "/home/jens/Source/shotwell/src/Event.vala" _tmp4_ = (gint64) (media_source_get_exposure_time (_tmp1_) - media_source_get_exposure_time (_tmp3_)); #line 306 "/home/jens/Source/shotwell/src/Event.vala" _g_object_unref0 (_tmp3_); #line 306 "/home/jens/Source/shotwell/src/Event.vala" _g_object_unref0 (_tmp1_); #line 306 "/home/jens/Source/shotwell/src/Event.vala" result = _tmp4_; #line 306 "/home/jens/Source/shotwell/src/Event.vala" return result; #line 2967 "Event.c" } static gboolean event_view_comparator_predicate (DataObject* object, Alteration* alteration) { gboolean result = FALSE; #line 310 "/home/jens/Source/shotwell/src/Event.vala" g_return_val_if_fail (IS_DATA_OBJECT (object), FALSE); #line 310 "/home/jens/Source/shotwell/src/Event.vala" g_return_val_if_fail (IS_ALTERATION (alteration), FALSE); #line 311 "/home/jens/Source/shotwell/src/Event.vala" result = alteration_has_detail (alteration, "metadata", "exposure-time"); #line 311 "/home/jens/Source/shotwell/src/Event.vala" return result; #line 2984 "Event.c" } gchar* event_prep_event_name (const gchar* name) { gchar* result = NULL; gchar* _tmp0_; #line 319 "/home/jens/Source/shotwell/src/Event.vala" _tmp0_ = prepare_input_text (name, (((PREPARE_INPUT_TEXT_OPTIONS_NORMALIZE | PREPARE_INPUT_TEXT_OPTIONS_VALIDATE) | PREPARE_INPUT_TEXT_OPTIONS_INVALID_IS_NULL) | PREPARE_INPUT_TEXT_OPTIONS_STRIP) | PREPARE_INPUT_TEXT_OPTIONS_STRIP_CRLF, DEFAULT_USER_TEXT_INPUT_LENGTH); #line 319 "/home/jens/Source/shotwell/src/Event.vala" result = _tmp0_; #line 319 "/home/jens/Source/shotwell/src/Event.vala" return result; #line 2999 "Event.c" } void event_attach (Event* self, MediaSource* source) { ViewCollection* _tmp0_; ThumbnailView* _tmp1_; ThumbnailView* _tmp2_; #line 327 "/home/jens/Source/shotwell/src/Event.vala" g_return_if_fail (IS_EVENT (self)); #line 327 "/home/jens/Source/shotwell/src/Event.vala" g_return_if_fail (IS_MEDIA_SOURCE (source)); #line 328 "/home/jens/Source/shotwell/src/Event.vala" _tmp0_ = self->priv->view; #line 328 "/home/jens/Source/shotwell/src/Event.vala" _tmp1_ = thumbnail_view_new (G_TYPE_CHECK_INSTANCE_CAST (source, TYPE_THUMBNAIL_SOURCE, ThumbnailSource)); #line 328 "/home/jens/Source/shotwell/src/Event.vala" _tmp2_ = _tmp1_; #line 328 "/home/jens/Source/shotwell/src/Event.vala" data_collection_add (G_TYPE_CHECK_INSTANCE_CAST (_tmp0_, TYPE_DATA_COLLECTION, DataCollection), G_TYPE_CHECK_INSTANCE_CAST (_tmp2_, TYPE_DATA_OBJECT, DataObject)); #line 328 "/home/jens/Source/shotwell/src/Event.vala" _g_object_unref0 (_tmp2_); #line 3024 "Event.c" } void event_attach_many (Event* self, GeeCollection* media) { GeeArrayList* views = NULL; GeeArrayList* _tmp0_; ViewCollection* _tmp9_; GeeArrayList* _tmp10_; GeeCollection* _tmp11_; GeeCollection* _tmp12_; #line 331 "/home/jens/Source/shotwell/src/Event.vala" g_return_if_fail (IS_EVENT (self)); #line 331 "/home/jens/Source/shotwell/src/Event.vala" g_return_if_fail (GEE_IS_COLLECTION (media)); #line 332 "/home/jens/Source/shotwell/src/Event.vala" _tmp0_ = gee_array_list_new (TYPE_THUMBNAIL_VIEW, (GBoxedCopyFunc) g_object_ref, (GDestroyNotify) g_object_unref, NULL, NULL, NULL); #line 332 "/home/jens/Source/shotwell/src/Event.vala" views = _tmp0_; #line 3046 "Event.c" { GeeIterator* _current_source_it = NULL; GeeIterator* _tmp1_; #line 333 "/home/jens/Source/shotwell/src/Event.vala" _tmp1_ = gee_iterable_iterator (G_TYPE_CHECK_INSTANCE_CAST (media, GEE_TYPE_ITERABLE, GeeIterable)); #line 333 "/home/jens/Source/shotwell/src/Event.vala" _current_source_it = _tmp1_; #line 333 "/home/jens/Source/shotwell/src/Event.vala" while (TRUE) { #line 3056 "Event.c" GeeIterator* _tmp2_; MediaSource* current_source = NULL; GeeIterator* _tmp3_; gpointer _tmp4_; GeeArrayList* _tmp5_; MediaSource* _tmp6_; ThumbnailView* _tmp7_; ThumbnailView* _tmp8_; #line 333 "/home/jens/Source/shotwell/src/Event.vala" _tmp2_ = _current_source_it; #line 333 "/home/jens/Source/shotwell/src/Event.vala" if (!gee_iterator_next (_tmp2_)) { #line 333 "/home/jens/Source/shotwell/src/Event.vala" break; #line 3071 "Event.c" } #line 333 "/home/jens/Source/shotwell/src/Event.vala" _tmp3_ = _current_source_it; #line 333 "/home/jens/Source/shotwell/src/Event.vala" _tmp4_ = gee_iterator_get (_tmp3_); #line 333 "/home/jens/Source/shotwell/src/Event.vala" current_source = (MediaSource*) _tmp4_; #line 334 "/home/jens/Source/shotwell/src/Event.vala" _tmp5_ = views; #line 334 "/home/jens/Source/shotwell/src/Event.vala" _tmp6_ = current_source; #line 334 "/home/jens/Source/shotwell/src/Event.vala" _tmp7_ = thumbnail_view_new (G_TYPE_CHECK_INSTANCE_CAST (_tmp6_, TYPE_THUMBNAIL_SOURCE, ThumbnailSource)); #line 334 "/home/jens/Source/shotwell/src/Event.vala" _tmp8_ = _tmp7_; #line 334 "/home/jens/Source/shotwell/src/Event.vala" gee_abstract_collection_add (G_TYPE_CHECK_INSTANCE_CAST (_tmp5_, GEE_TYPE_ABSTRACT_COLLECTION, GeeAbstractCollection), _tmp8_); #line 334 "/home/jens/Source/shotwell/src/Event.vala" _g_object_unref0 (_tmp8_); #line 333 "/home/jens/Source/shotwell/src/Event.vala" _g_object_unref0 (current_source); #line 3093 "Event.c" } #line 333 "/home/jens/Source/shotwell/src/Event.vala" _g_object_unref0 (_current_source_it); #line 3097 "Event.c" } #line 336 "/home/jens/Source/shotwell/src/Event.vala" _tmp9_ = self->priv->view; #line 336 "/home/jens/Source/shotwell/src/Event.vala" _tmp10_ = views; #line 336 "/home/jens/Source/shotwell/src/Event.vala" _tmp11_ = data_collection_add_many (G_TYPE_CHECK_INSTANCE_CAST (_tmp9_, TYPE_DATA_COLLECTION, DataCollection), G_TYPE_CHECK_INSTANCE_CAST (_tmp10_, GEE_TYPE_COLLECTION, GeeCollection), NULL, NULL); #line 336 "/home/jens/Source/shotwell/src/Event.vala" _tmp12_ = _tmp11_; #line 336 "/home/jens/Source/shotwell/src/Event.vala" _g_object_unref0 (_tmp12_); #line 331 "/home/jens/Source/shotwell/src/Event.vala" _g_object_unref0 (views); #line 3111 "Event.c" } void event_detach (Event* self, MediaSource* source) { ViewCollection* _tmp0_; ViewCollection* _tmp1_; ViewCollection* _tmp2_; DataView* _tmp3_; DataView* _tmp4_; Marker* _tmp5_; Marker* _tmp6_; #line 342 "/home/jens/Source/shotwell/src/Event.vala" g_return_if_fail (IS_EVENT (self)); #line 342 "/home/jens/Source/shotwell/src/Event.vala" g_return_if_fail (IS_MEDIA_SOURCE (source)); #line 343 "/home/jens/Source/shotwell/src/Event.vala" _tmp0_ = self->priv->view; #line 343 "/home/jens/Source/shotwell/src/Event.vala" _tmp1_ = self->priv->view; #line 343 "/home/jens/Source/shotwell/src/Event.vala" _tmp2_ = self->priv->view; #line 343 "/home/jens/Source/shotwell/src/Event.vala" _tmp3_ = view_collection_get_view_for_source (_tmp2_, G_TYPE_CHECK_INSTANCE_CAST (source, TYPE_DATA_SOURCE, DataSource)); #line 343 "/home/jens/Source/shotwell/src/Event.vala" _tmp4_ = _tmp3_; #line 343 "/home/jens/Source/shotwell/src/Event.vala" _tmp5_ = data_collection_mark (G_TYPE_CHECK_INSTANCE_CAST (_tmp1_, TYPE_DATA_COLLECTION, DataCollection), G_TYPE_CHECK_INSTANCE_CAST (_tmp4_, TYPE_DATA_OBJECT, DataObject)); #line 343 "/home/jens/Source/shotwell/src/Event.vala" _tmp6_ = _tmp5_; #line 343 "/home/jens/Source/shotwell/src/Event.vala" data_collection_remove_marked (G_TYPE_CHECK_INSTANCE_CAST (_tmp0_, TYPE_DATA_COLLECTION, DataCollection), _tmp6_); #line 343 "/home/jens/Source/shotwell/src/Event.vala" _g_object_unref0 (_tmp6_); #line 343 "/home/jens/Source/shotwell/src/Event.vala" _g_object_unref0 (_tmp4_); #line 3150 "Event.c" } void event_detach_many (Event* self, GeeCollection* media) { GeeArrayList* views = NULL; GeeArrayList* _tmp0_; ViewCollection* _tmp11_; ViewCollection* _tmp12_; GeeArrayList* _tmp13_; Marker* _tmp14_; Marker* _tmp15_; #line 346 "/home/jens/Source/shotwell/src/Event.vala" g_return_if_fail (IS_EVENT (self)); #line 346 "/home/jens/Source/shotwell/src/Event.vala" g_return_if_fail (GEE_IS_COLLECTION (media)); #line 347 "/home/jens/Source/shotwell/src/Event.vala" _tmp0_ = gee_array_list_new (TYPE_THUMBNAIL_VIEW, (GBoxedCopyFunc) g_object_ref, (GDestroyNotify) g_object_unref, NULL, NULL, NULL); #line 347 "/home/jens/Source/shotwell/src/Event.vala" views = _tmp0_; #line 3173 "Event.c" { GeeIterator* _current_source_it = NULL; GeeIterator* _tmp1_; #line 348 "/home/jens/Source/shotwell/src/Event.vala" _tmp1_ = gee_iterable_iterator (G_TYPE_CHECK_INSTANCE_CAST (media, GEE_TYPE_ITERABLE, GeeIterable)); #line 348 "/home/jens/Source/shotwell/src/Event.vala" _current_source_it = _tmp1_; #line 348 "/home/jens/Source/shotwell/src/Event.vala" while (TRUE) { #line 3183 "Event.c" GeeIterator* _tmp2_; MediaSource* current_source = NULL; GeeIterator* _tmp3_; gpointer _tmp4_; ThumbnailView* view = NULL; ViewCollection* _tmp5_; MediaSource* _tmp6_; DataView* _tmp7_; ThumbnailView* _tmp8_; #line 348 "/home/jens/Source/shotwell/src/Event.vala" _tmp2_ = _current_source_it; #line 348 "/home/jens/Source/shotwell/src/Event.vala" if (!gee_iterator_next (_tmp2_)) { #line 348 "/home/jens/Source/shotwell/src/Event.vala" break; #line 3199 "Event.c" } #line 348 "/home/jens/Source/shotwell/src/Event.vala" _tmp3_ = _current_source_it; #line 348 "/home/jens/Source/shotwell/src/Event.vala" _tmp4_ = gee_iterator_get (_tmp3_); #line 348 "/home/jens/Source/shotwell/src/Event.vala" current_source = (MediaSource*) _tmp4_; #line 349 "/home/jens/Source/shotwell/src/Event.vala" _tmp5_ = self->priv->view; #line 349 "/home/jens/Source/shotwell/src/Event.vala" _tmp6_ = current_source; #line 349 "/home/jens/Source/shotwell/src/Event.vala" _tmp7_ = view_collection_get_view_for_source (_tmp5_, G_TYPE_CHECK_INSTANCE_CAST (_tmp6_, TYPE_DATA_SOURCE, DataSource)); #line 349 "/home/jens/Source/shotwell/src/Event.vala" view = G_TYPE_CHECK_INSTANCE_CAST (_tmp7_, TYPE_THUMBNAIL_VIEW, ThumbnailView); #line 350 "/home/jens/Source/shotwell/src/Event.vala" _tmp8_ = view; #line 350 "/home/jens/Source/shotwell/src/Event.vala" if (_tmp8_ != NULL) { #line 3219 "Event.c" GeeArrayList* _tmp9_; ThumbnailView* _tmp10_; #line 351 "/home/jens/Source/shotwell/src/Event.vala" _tmp9_ = views; #line 351 "/home/jens/Source/shotwell/src/Event.vala" _tmp10_ = view; #line 351 "/home/jens/Source/shotwell/src/Event.vala" gee_abstract_collection_add (G_TYPE_CHECK_INSTANCE_CAST (_tmp9_, GEE_TYPE_ABSTRACT_COLLECTION, GeeAbstractCollection), _tmp10_); #line 3228 "Event.c" } #line 348 "/home/jens/Source/shotwell/src/Event.vala" _g_object_unref0 (view); #line 348 "/home/jens/Source/shotwell/src/Event.vala" _g_object_unref0 (current_source); #line 3234 "Event.c" } #line 348 "/home/jens/Source/shotwell/src/Event.vala" _g_object_unref0 (_current_source_it); #line 3238 "Event.c" } #line 354 "/home/jens/Source/shotwell/src/Event.vala" _tmp11_ = self->priv->view; #line 354 "/home/jens/Source/shotwell/src/Event.vala" _tmp12_ = self->priv->view; #line 354 "/home/jens/Source/shotwell/src/Event.vala" _tmp13_ = views; #line 354 "/home/jens/Source/shotwell/src/Event.vala" _tmp14_ = data_collection_mark_many (G_TYPE_CHECK_INSTANCE_CAST (_tmp12_, TYPE_DATA_COLLECTION, DataCollection), G_TYPE_CHECK_INSTANCE_CAST (_tmp13_, GEE_TYPE_COLLECTION, GeeCollection)); #line 354 "/home/jens/Source/shotwell/src/Event.vala" _tmp15_ = _tmp14_; #line 354 "/home/jens/Source/shotwell/src/Event.vala" data_collection_remove_marked (G_TYPE_CHECK_INSTANCE_CAST (_tmp11_, TYPE_DATA_COLLECTION, DataCollection), _tmp15_); #line 354 "/home/jens/Source/shotwell/src/Event.vala" _g_object_unref0 (_tmp15_); #line 346 "/home/jens/Source/shotwell/src/Event.vala" _g_object_unref0 (views); #line 3256 "Event.c" } gboolean event_contains_media_type (Event* self, const gchar* media_type) { gboolean result = FALSE; #line 360 "/home/jens/Source/shotwell/src/Event.vala" g_return_val_if_fail (IS_EVENT (self), FALSE); #line 360 "/home/jens/Source/shotwell/src/Event.vala" g_return_val_if_fail (media_type != NULL, FALSE); #line 3269 "Event.c" { GeeIterator* _media_it = NULL; GeeCollection* _tmp0_; GeeCollection* _tmp1_; GeeIterator* _tmp2_; GeeIterator* _tmp3_; #line 361 "/home/jens/Source/shotwell/src/Event.vala" _tmp0_ = event_source_get_media (G_TYPE_CHECK_INSTANCE_CAST (self, TYPE_EVENT_SOURCE, EventSource)); #line 361 "/home/jens/Source/shotwell/src/Event.vala" _tmp1_ = _tmp0_; #line 361 "/home/jens/Source/shotwell/src/Event.vala" _tmp2_ = gee_iterable_iterator (G_TYPE_CHECK_INSTANCE_CAST (_tmp1_, GEE_TYPE_ITERABLE, GeeIterable)); #line 361 "/home/jens/Source/shotwell/src/Event.vala" _tmp3_ = _tmp2_; #line 361 "/home/jens/Source/shotwell/src/Event.vala" _g_object_unref0 (_tmp1_); #line 361 "/home/jens/Source/shotwell/src/Event.vala" _media_it = _tmp3_; #line 361 "/home/jens/Source/shotwell/src/Event.vala" while (TRUE) { #line 3290 "Event.c" GeeIterator* _tmp4_; MediaSource* media = NULL; GeeIterator* _tmp5_; gpointer _tmp6_; MediaSource* _tmp7_; gchar* _tmp8_; gchar* _tmp9_; gboolean _tmp10_; #line 361 "/home/jens/Source/shotwell/src/Event.vala" _tmp4_ = _media_it; #line 361 "/home/jens/Source/shotwell/src/Event.vala" if (!gee_iterator_next (_tmp4_)) { #line 361 "/home/jens/Source/shotwell/src/Event.vala" break; #line 3305 "Event.c" } #line 361 "/home/jens/Source/shotwell/src/Event.vala" _tmp5_ = _media_it; #line 361 "/home/jens/Source/shotwell/src/Event.vala" _tmp6_ = gee_iterator_get (_tmp5_); #line 361 "/home/jens/Source/shotwell/src/Event.vala" media = (MediaSource*) _tmp6_; #line 362 "/home/jens/Source/shotwell/src/Event.vala" _tmp7_ = media; #line 362 "/home/jens/Source/shotwell/src/Event.vala" _tmp8_ = data_source_get_typename (G_TYPE_CHECK_INSTANCE_CAST (_tmp7_, TYPE_DATA_SOURCE, DataSource)); #line 362 "/home/jens/Source/shotwell/src/Event.vala" _tmp9_ = _tmp8_; #line 362 "/home/jens/Source/shotwell/src/Event.vala" _tmp10_ = g_strcmp0 (_tmp9_, media_type) == 0; #line 362 "/home/jens/Source/shotwell/src/Event.vala" _g_free0 (_tmp9_); #line 362 "/home/jens/Source/shotwell/src/Event.vala" if (_tmp10_) { #line 363 "/home/jens/Source/shotwell/src/Event.vala" result = TRUE; #line 363 "/home/jens/Source/shotwell/src/Event.vala" _g_object_unref0 (media); #line 363 "/home/jens/Source/shotwell/src/Event.vala" _g_object_unref0 (_media_it); #line 363 "/home/jens/Source/shotwell/src/Event.vala" return result; #line 3333 "Event.c" } #line 361 "/home/jens/Source/shotwell/src/Event.vala" _g_object_unref0 (media); #line 3337 "Event.c" } #line 361 "/home/jens/Source/shotwell/src/Event.vala" _g_object_unref0 (_media_it); #line 3341 "Event.c" } #line 366 "/home/jens/Source/shotwell/src/Event.vala" result = FALSE; #line 366 "/home/jens/Source/shotwell/src/Event.vala" return result; #line 3347 "Event.c" } static GeeArrayList* event_views_to_media (Event* self, GeeIterable* views) { GeeArrayList* result = NULL; GeeArrayList* media = NULL; GeeArrayList* _tmp0_; #line 369 "/home/jens/Source/shotwell/src/Event.vala" g_return_val_if_fail (IS_EVENT (self), NULL); #line 369 "/home/jens/Source/shotwell/src/Event.vala" g_return_val_if_fail (GEE_IS_ITERABLE (views), NULL); #line 370 "/home/jens/Source/shotwell/src/Event.vala" _tmp0_ = gee_array_list_new (TYPE_MEDIA_SOURCE, (GBoxedCopyFunc) g_object_ref, (GDestroyNotify) g_object_unref, NULL, NULL, NULL); #line 370 "/home/jens/Source/shotwell/src/Event.vala" media = _tmp0_; #line 3366 "Event.c" { GeeIterator* _object_it = NULL; GeeIterator* _tmp1_; #line 371 "/home/jens/Source/shotwell/src/Event.vala" _tmp1_ = gee_iterable_iterator (views); #line 371 "/home/jens/Source/shotwell/src/Event.vala" _object_it = _tmp1_; #line 371 "/home/jens/Source/shotwell/src/Event.vala" while (TRUE) { #line 3376 "Event.c" GeeIterator* _tmp2_; DataObject* object = NULL; GeeIterator* _tmp3_; gpointer _tmp4_; GeeArrayList* _tmp5_; DataObject* _tmp6_; DataSource* _tmp7_; MediaSource* _tmp8_; #line 371 "/home/jens/Source/shotwell/src/Event.vala" _tmp2_ = _object_it; #line 371 "/home/jens/Source/shotwell/src/Event.vala" if (!gee_iterator_next (_tmp2_)) { #line 371 "/home/jens/Source/shotwell/src/Event.vala" break; #line 3391 "Event.c" } #line 371 "/home/jens/Source/shotwell/src/Event.vala" _tmp3_ = _object_it; #line 371 "/home/jens/Source/shotwell/src/Event.vala" _tmp4_ = gee_iterator_get (_tmp3_); #line 371 "/home/jens/Source/shotwell/src/Event.vala" object = (DataObject*) _tmp4_; #line 372 "/home/jens/Source/shotwell/src/Event.vala" _tmp5_ = media; #line 372 "/home/jens/Source/shotwell/src/Event.vala" _tmp6_ = object; #line 372 "/home/jens/Source/shotwell/src/Event.vala" _tmp7_ = data_view_get_source (G_TYPE_CHECK_INSTANCE_CAST (_tmp6_, TYPE_DATA_VIEW, DataView)); #line 372 "/home/jens/Source/shotwell/src/Event.vala" _tmp8_ = G_TYPE_CHECK_INSTANCE_CAST (_tmp7_, TYPE_MEDIA_SOURCE, MediaSource); #line 372 "/home/jens/Source/shotwell/src/Event.vala" gee_abstract_collection_add (G_TYPE_CHECK_INSTANCE_CAST (_tmp5_, GEE_TYPE_ABSTRACT_COLLECTION, GeeAbstractCollection), _tmp8_); #line 372 "/home/jens/Source/shotwell/src/Event.vala" _g_object_unref0 (_tmp8_); #line 371 "/home/jens/Source/shotwell/src/Event.vala" _g_object_unref0 (object); #line 3413 "Event.c" } #line 371 "/home/jens/Source/shotwell/src/Event.vala" _g_object_unref0 (_object_it); #line 3417 "Event.c" } #line 374 "/home/jens/Source/shotwell/src/Event.vala" result = media; #line 374 "/home/jens/Source/shotwell/src/Event.vala" return result; #line 3423 "Event.c" } static void event_on_media_added (Event* self, GeeIterable* added) { GeeCollection* media = NULL; GeeArrayList* _tmp0_; EventSourceCollection* _tmp1_; gboolean _tmp2_; EventSourceCollection* _tmp3_; gboolean _tmp4_; Alteration* _tmp5_; Alteration* _tmp6_; #line 377 "/home/jens/Source/shotwell/src/Event.vala" g_return_if_fail (IS_EVENT (self)); #line 377 "/home/jens/Source/shotwell/src/Event.vala" g_return_if_fail (GEE_IS_ITERABLE (added)); #line 378 "/home/jens/Source/shotwell/src/Event.vala" _tmp0_ = event_views_to_media (self, added); #line 378 "/home/jens/Source/shotwell/src/Event.vala" media = G_TYPE_CHECK_INSTANCE_CAST (_tmp0_, GEE_TYPE_COLLECTION, GeeCollection); #line 379 "/home/jens/Source/shotwell/src/Event.vala" _tmp1_ = event_global; #line 379 "/home/jens/Source/shotwell/src/Event.vala" _tmp2_ = self->priv->relinking; #line 379 "/home/jens/Source/shotwell/src/Event.vala" container_source_collection_notify_container_contents_added (G_TYPE_CHECK_INSTANCE_CAST (_tmp1_, TYPE_CONTAINER_SOURCE_COLLECTION, ContainerSourceCollection), G_TYPE_CHECK_INSTANCE_CAST (self, TYPE_CONTAINER_SOURCE, ContainerSource), media, _tmp2_); #line 380 "/home/jens/Source/shotwell/src/Event.vala" _tmp3_ = event_global; #line 380 "/home/jens/Source/shotwell/src/Event.vala" _tmp4_ = self->priv->relinking; #line 380 "/home/jens/Source/shotwell/src/Event.vala" container_source_collection_notify_container_contents_altered (G_TYPE_CHECK_INSTANCE_CAST (_tmp3_, TYPE_CONTAINER_SOURCE_COLLECTION, ContainerSourceCollection), G_TYPE_CHECK_INSTANCE_CAST (self, TYPE_CONTAINER_SOURCE, ContainerSource), media, _tmp4_, NULL, FALSE); #line 382 "/home/jens/Source/shotwell/src/Event.vala" _tmp5_ = alteration_new_from_list ("contents:added, metadata:time"); #line 382 "/home/jens/Source/shotwell/src/Event.vala" _tmp6_ = _tmp5_; #line 382 "/home/jens/Source/shotwell/src/Event.vala" data_object_notify_altered (G_TYPE_CHECK_INSTANCE_CAST (self, TYPE_DATA_OBJECT, DataObject), _tmp6_); #line 382 "/home/jens/Source/shotwell/src/Event.vala" _alteration_unref0 (_tmp6_); #line 377 "/home/jens/Source/shotwell/src/Event.vala" _g_object_unref0 (media); #line 3469 "Event.c" } static void event_on_media_removed (Event* self, GeeIterable* removed) { GeeArrayList* media = NULL; GeeArrayList* _tmp0_; EventSourceCollection* _tmp1_; GeeArrayList* _tmp2_; gboolean _tmp3_; EventSourceCollection* _tmp4_; GeeArrayList* _tmp5_; gboolean _tmp6_; Alteration* _tmp26_; Alteration* _tmp27_; #line 386 "/home/jens/Source/shotwell/src/Event.vala" g_return_if_fail (IS_EVENT (self)); #line 386 "/home/jens/Source/shotwell/src/Event.vala" g_return_if_fail (GEE_IS_ITERABLE (removed)); #line 387 "/home/jens/Source/shotwell/src/Event.vala" _tmp0_ = event_views_to_media (self, removed); #line 387 "/home/jens/Source/shotwell/src/Event.vala" media = _tmp0_; #line 389 "/home/jens/Source/shotwell/src/Event.vala" _tmp1_ = event_global; #line 389 "/home/jens/Source/shotwell/src/Event.vala" _tmp2_ = media; #line 389 "/home/jens/Source/shotwell/src/Event.vala" _tmp3_ = self->priv->unlinking; #line 389 "/home/jens/Source/shotwell/src/Event.vala" container_source_collection_notify_container_contents_removed (G_TYPE_CHECK_INSTANCE_CAST (_tmp1_, TYPE_CONTAINER_SOURCE_COLLECTION, ContainerSourceCollection), G_TYPE_CHECK_INSTANCE_CAST (self, TYPE_CONTAINER_SOURCE, ContainerSource), G_TYPE_CHECK_INSTANCE_CAST (_tmp2_, GEE_TYPE_COLLECTION, GeeCollection), _tmp3_); #line 390 "/home/jens/Source/shotwell/src/Event.vala" _tmp4_ = event_global; #line 390 "/home/jens/Source/shotwell/src/Event.vala" _tmp5_ = media; #line 390 "/home/jens/Source/shotwell/src/Event.vala" _tmp6_ = self->priv->unlinking; #line 390 "/home/jens/Source/shotwell/src/Event.vala" container_source_collection_notify_container_contents_altered (G_TYPE_CHECK_INSTANCE_CAST (_tmp4_, TYPE_CONTAINER_SOURCE_COLLECTION, ContainerSourceCollection), G_TYPE_CHECK_INSTANCE_CAST (self, TYPE_CONTAINER_SOURCE, ContainerSource), NULL, FALSE, G_TYPE_CHECK_INSTANCE_CAST (_tmp5_, GEE_TYPE_COLLECTION, GeeCollection), _tmp6_); #line 3511 "Event.c" { GeeArrayList* _current_source_list = NULL; GeeArrayList* _tmp7_; GeeArrayList* _tmp8_; gint _current_source_size = 0; GeeArrayList* _tmp9_; gint _tmp10_; gint _tmp11_; gint _current_source_index = 0; #line 393 "/home/jens/Source/shotwell/src/Event.vala" _tmp7_ = media; #line 393 "/home/jens/Source/shotwell/src/Event.vala" _tmp8_ = _g_object_ref0 (_tmp7_); #line 393 "/home/jens/Source/shotwell/src/Event.vala" _current_source_list = _tmp8_; #line 393 "/home/jens/Source/shotwell/src/Event.vala" _tmp9_ = _current_source_list; #line 393 "/home/jens/Source/shotwell/src/Event.vala" _tmp10_ = gee_abstract_collection_get_size (G_TYPE_CHECK_INSTANCE_CAST (_tmp9_, GEE_TYPE_ABSTRACT_COLLECTION, GeeAbstractCollection)); #line 393 "/home/jens/Source/shotwell/src/Event.vala" _tmp11_ = _tmp10_; #line 393 "/home/jens/Source/shotwell/src/Event.vala" _current_source_size = _tmp11_; #line 393 "/home/jens/Source/shotwell/src/Event.vala" _current_source_index = -1; #line 393 "/home/jens/Source/shotwell/src/Event.vala" while (TRUE) { #line 3539 "Event.c" gint _tmp12_; gint _tmp13_; gint _tmp14_; MediaSource* current_source = NULL; GeeArrayList* _tmp15_; gint _tmp16_; gpointer _tmp17_; MediaSource* _tmp18_; MediaSource* _tmp19_; #line 393 "/home/jens/Source/shotwell/src/Event.vala" _tmp12_ = _current_source_index; #line 393 "/home/jens/Source/shotwell/src/Event.vala" _current_source_index = _tmp12_ + 1; #line 393 "/home/jens/Source/shotwell/src/Event.vala" _tmp13_ = _current_source_index; #line 393 "/home/jens/Source/shotwell/src/Event.vala" _tmp14_ = _current_source_size; #line 393 "/home/jens/Source/shotwell/src/Event.vala" if (!(_tmp13_ < _tmp14_)) { #line 393 "/home/jens/Source/shotwell/src/Event.vala" break; #line 3561 "Event.c" } #line 393 "/home/jens/Source/shotwell/src/Event.vala" _tmp15_ = _current_source_list; #line 393 "/home/jens/Source/shotwell/src/Event.vala" _tmp16_ = _current_source_index; #line 393 "/home/jens/Source/shotwell/src/Event.vala" _tmp17_ = gee_abstract_list_get (G_TYPE_CHECK_INSTANCE_CAST (_tmp15_, GEE_TYPE_ABSTRACT_LIST, GeeAbstractList), _tmp16_); #line 393 "/home/jens/Source/shotwell/src/Event.vala" current_source = (MediaSource*) _tmp17_; #line 394 "/home/jens/Source/shotwell/src/Event.vala" _tmp18_ = current_source; #line 394 "/home/jens/Source/shotwell/src/Event.vala" _tmp19_ = self->priv->primary_source; #line 394 "/home/jens/Source/shotwell/src/Event.vala" if (_tmp18_ == _tmp19_) { #line 395 "/home/jens/Source/shotwell/src/Event.vala" if (event_source_get_media_count (G_TYPE_CHECK_INSTANCE_CAST (self, TYPE_EVENT_SOURCE, EventSource)) > 0) { #line 3579 "Event.c" ViewCollection* _tmp20_; DataView* _tmp21_; DataView* _tmp22_; DataSource* _tmp23_; MediaSource* _tmp24_; #line 396 "/home/jens/Source/shotwell/src/Event.vala" _tmp20_ = self->priv->view; #line 396 "/home/jens/Source/shotwell/src/Event.vala" _tmp21_ = view_collection_get_first_unrejected (_tmp20_); #line 396 "/home/jens/Source/shotwell/src/Event.vala" _tmp22_ = _tmp21_; #line 396 "/home/jens/Source/shotwell/src/Event.vala" _tmp23_ = data_view_get_source (_tmp22_); #line 396 "/home/jens/Source/shotwell/src/Event.vala" _tmp24_ = G_TYPE_CHECK_INSTANCE_CAST (_tmp23_, TYPE_MEDIA_SOURCE, MediaSource); #line 396 "/home/jens/Source/shotwell/src/Event.vala" event_set_primary_source (self, _tmp24_); #line 396 "/home/jens/Source/shotwell/src/Event.vala" _g_object_unref0 (_tmp24_); #line 396 "/home/jens/Source/shotwell/src/Event.vala" _g_object_unref0 (_tmp22_); #line 3601 "Event.c" } else { #line 398 "/home/jens/Source/shotwell/src/Event.vala" event_release_primary_source (self); #line 3605 "Event.c" } #line 400 "/home/jens/Source/shotwell/src/Event.vala" _g_object_unref0 (current_source); #line 400 "/home/jens/Source/shotwell/src/Event.vala" break; #line 3611 "Event.c" } #line 393 "/home/jens/Source/shotwell/src/Event.vala" _g_object_unref0 (current_source); #line 3615 "Event.c" } #line 393 "/home/jens/Source/shotwell/src/Event.vala" _g_object_unref0 (_current_source_list); #line 3619 "Event.c" } #line 405 "/home/jens/Source/shotwell/src/Event.vala" if (event_source_get_media_count (G_TYPE_CHECK_INSTANCE_CAST (self, TYPE_EVENT_SOURCE, EventSource)) == 0) { #line 3623 "Event.c" EventSourceCollection* _tmp25_; #line 406 "/home/jens/Source/shotwell/src/Event.vala" _tmp25_ = event_global; #line 406 "/home/jens/Source/shotwell/src/Event.vala" container_source_collection_evaporate (G_TYPE_CHECK_INSTANCE_CAST (_tmp25_, TYPE_CONTAINER_SOURCE_COLLECTION, ContainerSourceCollection), G_TYPE_CHECK_INSTANCE_CAST (self, TYPE_CONTAINER_SOURCE, ContainerSource)); #line 410 "/home/jens/Source/shotwell/src/Event.vala" _g_object_unref0 (media); #line 410 "/home/jens/Source/shotwell/src/Event.vala" return; #line 3633 "Event.c" } #line 413 "/home/jens/Source/shotwell/src/Event.vala" _tmp26_ = alteration_new_from_list ("contents:removed, metadata:time"); #line 413 "/home/jens/Source/shotwell/src/Event.vala" _tmp27_ = _tmp26_; #line 413 "/home/jens/Source/shotwell/src/Event.vala" data_object_notify_altered (G_TYPE_CHECK_INSTANCE_CAST (self, TYPE_DATA_OBJECT, DataObject), _tmp27_); #line 413 "/home/jens/Source/shotwell/src/Event.vala" _alteration_unref0 (_tmp27_); #line 386 "/home/jens/Source/shotwell/src/Event.vala" _g_object_unref0 (media); #line 3645 "Event.c" } static void event_on_media_destroyed (Event* self, DataSource* source) { ThumbnailView* thumbnail_view = NULL; ViewCollection* _tmp0_; DataView* _tmp1_; ThumbnailView* _tmp2_; #line 416 "/home/jens/Source/shotwell/src/Event.vala" g_return_if_fail (IS_EVENT (self)); #line 416 "/home/jens/Source/shotwell/src/Event.vala" g_return_if_fail (IS_DATA_SOURCE (source)); #line 417 "/home/jens/Source/shotwell/src/Event.vala" _tmp0_ = self->priv->view; #line 417 "/home/jens/Source/shotwell/src/Event.vala" _tmp1_ = view_collection_get_view_for_source (_tmp0_, source); #line 417 "/home/jens/Source/shotwell/src/Event.vala" thumbnail_view = G_TYPE_CHECK_INSTANCE_CAST (_tmp1_, TYPE_THUMBNAIL_VIEW, ThumbnailView); #line 418 "/home/jens/Source/shotwell/src/Event.vala" _tmp2_ = thumbnail_view; #line 418 "/home/jens/Source/shotwell/src/Event.vala" if (_tmp2_ != NULL) { #line 3671 "Event.c" ViewCollection* _tmp3_; ViewCollection* _tmp4_; ThumbnailView* _tmp5_; Marker* _tmp6_; Marker* _tmp7_; #line 419 "/home/jens/Source/shotwell/src/Event.vala" _tmp3_ = self->priv->view; #line 419 "/home/jens/Source/shotwell/src/Event.vala" _tmp4_ = self->priv->view; #line 419 "/home/jens/Source/shotwell/src/Event.vala" _tmp5_ = thumbnail_view; #line 419 "/home/jens/Source/shotwell/src/Event.vala" _tmp6_ = data_collection_mark (G_TYPE_CHECK_INSTANCE_CAST (_tmp4_, TYPE_DATA_COLLECTION, DataCollection), G_TYPE_CHECK_INSTANCE_CAST (_tmp5_, TYPE_DATA_OBJECT, DataObject)); #line 419 "/home/jens/Source/shotwell/src/Event.vala" _tmp7_ = _tmp6_; #line 419 "/home/jens/Source/shotwell/src/Event.vala" data_collection_remove_marked (G_TYPE_CHECK_INSTANCE_CAST (_tmp3_, TYPE_DATA_COLLECTION, DataCollection), _tmp7_); #line 419 "/home/jens/Source/shotwell/src/Event.vala" _g_object_unref0 (_tmp7_); #line 3691 "Event.c" } #line 416 "/home/jens/Source/shotwell/src/Event.vala" _g_object_unref0 (thumbnail_view); #line 3695 "Event.c" } static void event_real_notify_relinking (DataSource* base, SourceCollection* sources) { Event * self; MediaSource* _tmp0_; #line 422 "/home/jens/Source/shotwell/src/Event.vala" self = G_TYPE_CHECK_INSTANCE_CAST (base, TYPE_EVENT, Event); #line 422 "/home/jens/Source/shotwell/src/Event.vala" g_return_if_fail (IS_SOURCE_COLLECTION (sources)); #line 423 "/home/jens/Source/shotwell/src/Event.vala" _vala_assert (event_source_get_media_count (G_TYPE_CHECK_INSTANCE_CAST (self, TYPE_EVENT_SOURCE, EventSource)) > 0, "get_media_count() > 0"); #line 426 "/home/jens/Source/shotwell/src/Event.vala" _tmp0_ = self->priv->primary_source; #line 426 "/home/jens/Source/shotwell/src/Event.vala" if (_tmp0_ == NULL) { #line 3715 "Event.c" ViewCollection* _tmp1_; DataView* _tmp2_; DataView* _tmp3_; DataSource* _tmp4_; MediaSource* _tmp5_; #line 427 "/home/jens/Source/shotwell/src/Event.vala" _tmp1_ = self->priv->view; #line 427 "/home/jens/Source/shotwell/src/Event.vala" _tmp2_ = view_collection_get_first_unrejected (_tmp1_); #line 427 "/home/jens/Source/shotwell/src/Event.vala" _tmp3_ = _tmp2_; #line 427 "/home/jens/Source/shotwell/src/Event.vala" _tmp4_ = data_view_get_source (_tmp3_); #line 427 "/home/jens/Source/shotwell/src/Event.vala" _tmp5_ = G_TYPE_CHECK_INSTANCE_CAST (_tmp4_, TYPE_MEDIA_SOURCE, MediaSource); #line 427 "/home/jens/Source/shotwell/src/Event.vala" event_set_primary_source (self, _tmp5_); #line 427 "/home/jens/Source/shotwell/src/Event.vala" _g_object_unref0 (_tmp5_); #line 427 "/home/jens/Source/shotwell/src/Event.vala" _g_object_unref0 (_tmp3_); #line 3737 "Event.c" } #line 429 "/home/jens/Source/shotwell/src/Event.vala" DATA_SOURCE_CLASS (event_parent_class)->notify_relinking (G_TYPE_CHECK_INSTANCE_CAST (G_TYPE_CHECK_INSTANCE_CAST (self, TYPE_EVENT_SOURCE, EventSource), TYPE_DATA_SOURCE, DataSource), sources); #line 3741 "Event.c" } /** @brief This gets called when one or more media items inside this * event gets modified in some fashion. If the media item's date changes * and the event was previously undated, the name of the event needs to * change as well; all of that happens automatically in here. * * In addition, if the _rating_ of one or more media items has changed, * the thumbnail of this event may need to change, as the primary * image may have been rejected and should not be the thumbnail anymore. */ static void event_on_media_altered (Event* self, GeeMap* items) { gboolean should_remake_thumb = FALSE; gboolean _tmp16_; #line 441 "/home/jens/Source/shotwell/src/Event.vala" g_return_if_fail (IS_EVENT (self)); #line 441 "/home/jens/Source/shotwell/src/Event.vala" g_return_if_fail (GEE_IS_MAP (items)); #line 442 "/home/jens/Source/shotwell/src/Event.vala" should_remake_thumb = FALSE; #line 3766 "Event.c" { GeeIterator* _alteration_it = NULL; GeeCollection* _tmp0_; GeeCollection* _tmp1_; GeeCollection* _tmp2_; GeeIterator* _tmp3_; GeeIterator* _tmp4_; #line 444 "/home/jens/Source/shotwell/src/Event.vala" _tmp0_ = gee_map_get_values (items); #line 444 "/home/jens/Source/shotwell/src/Event.vala" _tmp1_ = _tmp0_; #line 444 "/home/jens/Source/shotwell/src/Event.vala" _tmp2_ = _tmp1_; #line 444 "/home/jens/Source/shotwell/src/Event.vala" _tmp3_ = gee_iterable_iterator (G_TYPE_CHECK_INSTANCE_CAST (_tmp2_, GEE_TYPE_ITERABLE, GeeIterable)); #line 444 "/home/jens/Source/shotwell/src/Event.vala" _tmp4_ = _tmp3_; #line 444 "/home/jens/Source/shotwell/src/Event.vala" _g_object_unref0 (_tmp2_); #line 444 "/home/jens/Source/shotwell/src/Event.vala" _alteration_it = _tmp4_; #line 444 "/home/jens/Source/shotwell/src/Event.vala" while (TRUE) { #line 3790 "Event.c" GeeIterator* _tmp5_; Alteration* alteration = NULL; GeeIterator* _tmp6_; gpointer _tmp7_; Alteration* _tmp8_; Alteration* _tmp15_; #line 444 "/home/jens/Source/shotwell/src/Event.vala" _tmp5_ = _alteration_it; #line 444 "/home/jens/Source/shotwell/src/Event.vala" if (!gee_iterator_next (_tmp5_)) { #line 444 "/home/jens/Source/shotwell/src/Event.vala" break; #line 3803 "Event.c" } #line 444 "/home/jens/Source/shotwell/src/Event.vala" _tmp6_ = _alteration_it; #line 444 "/home/jens/Source/shotwell/src/Event.vala" _tmp7_ = gee_iterator_get (_tmp6_); #line 444 "/home/jens/Source/shotwell/src/Event.vala" alteration = (Alteration*) _tmp7_; #line 445 "/home/jens/Source/shotwell/src/Event.vala" _tmp8_ = alteration; #line 445 "/home/jens/Source/shotwell/src/Event.vala" if (alteration_has_detail (_tmp8_, "metadata", "exposure-time")) { #line 3815 "Event.c" gchar* alt_list = NULL; gchar* _tmp9_; const gchar* _tmp12_; Alteration* _tmp13_; Alteration* _tmp14_; #line 447 "/home/jens/Source/shotwell/src/Event.vala" _tmp9_ = g_strdup ("metadata:time"); #line 447 "/home/jens/Source/shotwell/src/Event.vala" alt_list = _tmp9_; #line 449 "/home/jens/Source/shotwell/src/Event.vala" if (!event_has_name (self)) { #line 3827 "Event.c" const gchar* _tmp10_; gchar* _tmp11_; #line 450 "/home/jens/Source/shotwell/src/Event.vala" _tmp10_ = alt_list; #line 450 "/home/jens/Source/shotwell/src/Event.vala" _tmp11_ = g_strconcat (_tmp10_, ", metadata:name", NULL); #line 450 "/home/jens/Source/shotwell/src/Event.vala" _g_free0 (alt_list); #line 450 "/home/jens/Source/shotwell/src/Event.vala" alt_list = _tmp11_; #line 3838 "Event.c" } #line 452 "/home/jens/Source/shotwell/src/Event.vala" _tmp12_ = alt_list; #line 452 "/home/jens/Source/shotwell/src/Event.vala" _tmp13_ = alteration_new_from_list (_tmp12_); #line 452 "/home/jens/Source/shotwell/src/Event.vala" _tmp14_ = _tmp13_; #line 452 "/home/jens/Source/shotwell/src/Event.vala" data_object_notify_altered (G_TYPE_CHECK_INSTANCE_CAST (self, TYPE_DATA_OBJECT, DataObject), _tmp14_); #line 452 "/home/jens/Source/shotwell/src/Event.vala" _alteration_unref0 (_tmp14_); #line 454 "/home/jens/Source/shotwell/src/Event.vala" _g_free0 (alt_list); #line 454 "/home/jens/Source/shotwell/src/Event.vala" _alteration_unref0 (alteration); #line 454 "/home/jens/Source/shotwell/src/Event.vala" break; #line 3856 "Event.c" } #line 457 "/home/jens/Source/shotwell/src/Event.vala" _tmp15_ = alteration; #line 457 "/home/jens/Source/shotwell/src/Event.vala" if (alteration_has_detail (_tmp15_, "metadata", "rating")) { #line 458 "/home/jens/Source/shotwell/src/Event.vala" should_remake_thumb = TRUE; #line 3864 "Event.c" } #line 444 "/home/jens/Source/shotwell/src/Event.vala" _alteration_unref0 (alteration); #line 3868 "Event.c" } #line 444 "/home/jens/Source/shotwell/src/Event.vala" _g_object_unref0 (_alteration_it); #line 3872 "Event.c" } #line 461 "/home/jens/Source/shotwell/src/Event.vala" _tmp16_ = should_remake_thumb; #line 461 "/home/jens/Source/shotwell/src/Event.vala" if (_tmp16_) { #line 3878 "Event.c" gboolean _tmp17_ = FALSE; MediaSource* _tmp18_; MediaSource* _tmp19_; gboolean _tmp20_; #line 463 "/home/jens/Source/shotwell/src/Event.vala" _tmp18_ = event_get_primary_source (self); #line 463 "/home/jens/Source/shotwell/src/Event.vala" _tmp19_ = _tmp18_; #line 463 "/home/jens/Source/shotwell/src/Event.vala" _tmp20_ = _tmp19_ == NULL; #line 463 "/home/jens/Source/shotwell/src/Event.vala" _g_object_unref0 (_tmp19_); #line 463 "/home/jens/Source/shotwell/src/Event.vala" if (_tmp20_) { #line 463 "/home/jens/Source/shotwell/src/Event.vala" _tmp17_ = TRUE; #line 3895 "Event.c" } else { MediaSource* _tmp21_; MediaSource* _tmp22_; #line 463 "/home/jens/Source/shotwell/src/Event.vala" _tmp21_ = event_get_primary_source (self); #line 463 "/home/jens/Source/shotwell/src/Event.vala" _tmp22_ = _tmp21_; #line 463 "/home/jens/Source/shotwell/src/Event.vala" _tmp17_ = media_source_get_rating (_tmp22_) == RATING_REJECTED; #line 463 "/home/jens/Source/shotwell/src/Event.vala" _g_object_unref0 (_tmp22_); #line 3907 "Event.c" } #line 463 "/home/jens/Source/shotwell/src/Event.vala" if (_tmp17_) { #line 3911 "Event.c" ViewCollection* _tmp23_; DataView* _tmp24_; DataView* _tmp25_; DataSource* _tmp26_; MediaSource* _tmp27_; #line 465 "/home/jens/Source/shotwell/src/Event.vala" _tmp23_ = self->priv->view; #line 465 "/home/jens/Source/shotwell/src/Event.vala" _tmp24_ = view_collection_get_first_unrejected (_tmp23_); #line 465 "/home/jens/Source/shotwell/src/Event.vala" _tmp25_ = _tmp24_; #line 465 "/home/jens/Source/shotwell/src/Event.vala" _tmp26_ = data_view_get_source (_tmp25_); #line 465 "/home/jens/Source/shotwell/src/Event.vala" _tmp27_ = G_TYPE_CHECK_INSTANCE_CAST (_tmp26_, TYPE_MEDIA_SOURCE, MediaSource); #line 465 "/home/jens/Source/shotwell/src/Event.vala" event_set_primary_source (self, _tmp27_); #line 465 "/home/jens/Source/shotwell/src/Event.vala" _g_object_unref0 (_tmp27_); #line 465 "/home/jens/Source/shotwell/src/Event.vala" _g_object_unref0 (_tmp25_); #line 3933 "Event.c" } } } Event* event_create_empty_event (MediaSource* source) { Event* result = NULL; GError * _inner_error_ = NULL; #line 474 "/home/jens/Source/shotwell/src/Event.vala" g_return_val_if_fail (IS_MEDIA_SOURCE (source), NULL); #line 3946 "Event.c" { EventRow* _tmp0_ = NULL; EventTable* _tmp1_; EventTable* _tmp2_; gchar* _tmp3_; gchar* _tmp4_; EventRow* _tmp5_; EventRow* _tmp6_; Event* event = NULL; Event* _tmp7_; EventSourceCollection* _tmp8_; Event* _tmp9_; Event* _tmp10_; gchar* _tmp11_; gchar* _tmp12_; #line 476 "/home/jens/Source/shotwell/src/Event.vala" _tmp1_ = event_table_get_instance (); #line 476 "/home/jens/Source/shotwell/src/Event.vala" _tmp2_ = _tmp1_; #line 476 "/home/jens/Source/shotwell/src/Event.vala" _tmp3_ = data_source_get_source_id (G_TYPE_CHECK_INSTANCE_CAST (source, TYPE_DATA_SOURCE, DataSource)); #line 476 "/home/jens/Source/shotwell/src/Event.vala" _tmp4_ = _tmp3_; #line 476 "/home/jens/Source/shotwell/src/Event.vala" _tmp5_ = event_table_create (_tmp2_, _tmp4_, NULL, &_inner_error_); #line 476 "/home/jens/Source/shotwell/src/Event.vala" _tmp6_ = _tmp5_; #line 476 "/home/jens/Source/shotwell/src/Event.vala" _g_free0 (_tmp4_); #line 476 "/home/jens/Source/shotwell/src/Event.vala" _database_table_unref0 (_tmp2_); #line 476 "/home/jens/Source/shotwell/src/Event.vala" _tmp0_ = _tmp6_; #line 476 "/home/jens/Source/shotwell/src/Event.vala" if (G_UNLIKELY (_inner_error_ != NULL)) { #line 476 "/home/jens/Source/shotwell/src/Event.vala" if (_inner_error_->domain == DATABASE_ERROR) { #line 3984 "Event.c" goto __catch444_database_error; } #line 476 "/home/jens/Source/shotwell/src/Event.vala" g_critical ("file %s: line %d: unexpected error: %s (%s, %d)", __FILE__, __LINE__, _inner_error_->message, g_quark_to_string (_inner_error_->domain), _inner_error_->code); #line 476 "/home/jens/Source/shotwell/src/Event.vala" g_clear_error (&_inner_error_); #line 476 "/home/jens/Source/shotwell/src/Event.vala" return NULL; #line 3993 "Event.c" } #line 476 "/home/jens/Source/shotwell/src/Event.vala" _tmp7_ = event_new (_tmp0_, DATA_OBJECT_INVALID_OBJECT_ID); #line 476 "/home/jens/Source/shotwell/src/Event.vala" event = _tmp7_; #line 477 "/home/jens/Source/shotwell/src/Event.vala" _tmp8_ = event_global; #line 477 "/home/jens/Source/shotwell/src/Event.vala" _tmp9_ = event; #line 477 "/home/jens/Source/shotwell/src/Event.vala" data_collection_add (G_TYPE_CHECK_INSTANCE_CAST (_tmp8_, TYPE_DATA_COLLECTION, DataCollection), G_TYPE_CHECK_INSTANCE_CAST (_tmp9_, TYPE_DATA_OBJECT, DataObject)); #line 479 "/home/jens/Source/shotwell/src/Event.vala" _tmp10_ = event; #line 479 "/home/jens/Source/shotwell/src/Event.vala" _tmp11_ = data_object_to_string (G_TYPE_CHECK_INSTANCE_CAST (_tmp10_, TYPE_DATA_OBJECT, DataObject)); #line 479 "/home/jens/Source/shotwell/src/Event.vala" _tmp12_ = _tmp11_; #line 479 "/home/jens/Source/shotwell/src/Event.vala" g_debug ("Event.vala:479: Created empty event %s", _tmp12_); #line 479 "/home/jens/Source/shotwell/src/Event.vala" _g_free0 (_tmp12_); #line 481 "/home/jens/Source/shotwell/src/Event.vala" result = event; #line 481 "/home/jens/Source/shotwell/src/Event.vala" _event_row_unref0 (_tmp0_); #line 481 "/home/jens/Source/shotwell/src/Event.vala" return result; #line 4021 "Event.c" } goto __finally444; __catch444_database_error: { GError* err = NULL; GError* _tmp13_; #line 475 "/home/jens/Source/shotwell/src/Event.vala" err = _inner_error_; #line 475 "/home/jens/Source/shotwell/src/Event.vala" _inner_error_ = NULL; #line 483 "/home/jens/Source/shotwell/src/Event.vala" _tmp13_ = err; #line 483 "/home/jens/Source/shotwell/src/Event.vala" app_window_database_error (_tmp13_); #line 485 "/home/jens/Source/shotwell/src/Event.vala" result = NULL; #line 485 "/home/jens/Source/shotwell/src/Event.vala" _g_error_free0 (err); #line 485 "/home/jens/Source/shotwell/src/Event.vala" return result; #line 4042 "Event.c" } __finally444: #line 475 "/home/jens/Source/shotwell/src/Event.vala" g_critical ("file %s: line %d: uncaught error: %s (%s, %d)", __FILE__, __LINE__, _inner_error_->message, g_quark_to_string (_inner_error_->domain), _inner_error_->code); #line 475 "/home/jens/Source/shotwell/src/Event.vala" g_clear_error (&_inner_error_); #line 475 "/home/jens/Source/shotwell/src/Event.vala" return NULL; #line 4051 "Event.c" } static Event* event_reconstitute (gint64 object_id, EventRow* row) { Event* result = NULL; EventTable* _tmp0_; EventTable* _tmp1_; EventID _tmp2_ = {0}; Event* event = NULL; Event* _tmp3_; EventSourceCollection* _tmp4_; EventSourceCollection* _tmp5_; gchar* _tmp6_; gchar* _tmp7_; #line 490 "/home/jens/Source/shotwell/src/Event.vala" g_return_val_if_fail (IS_EVENT_ROW (row), NULL); #line 491 "/home/jens/Source/shotwell/src/Event.vala" _tmp0_ = event_table_get_instance (); #line 491 "/home/jens/Source/shotwell/src/Event.vala" _tmp1_ = _tmp0_; #line 491 "/home/jens/Source/shotwell/src/Event.vala" event_table_create_from_row (_tmp1_, row, &_tmp2_); #line 491 "/home/jens/Source/shotwell/src/Event.vala" row->event_id = _tmp2_; #line 491 "/home/jens/Source/shotwell/src/Event.vala" _database_table_unref0 (_tmp1_); #line 492 "/home/jens/Source/shotwell/src/Event.vala" _tmp3_ = event_new (row, object_id); #line 492 "/home/jens/Source/shotwell/src/Event.vala" event = _tmp3_; #line 493 "/home/jens/Source/shotwell/src/Event.vala" _tmp4_ = event_global; #line 493 "/home/jens/Source/shotwell/src/Event.vala" data_collection_add (G_TYPE_CHECK_INSTANCE_CAST (_tmp4_, TYPE_DATA_COLLECTION, DataCollection), G_TYPE_CHECK_INSTANCE_CAST (event, TYPE_DATA_OBJECT, DataObject)); #line 494 "/home/jens/Source/shotwell/src/Event.vala" _tmp5_ = event_global; #line 494 "/home/jens/Source/shotwell/src/Event.vala" _vala_assert (data_collection_contains (G_TYPE_CHECK_INSTANCE_CAST (_tmp5_, TYPE_DATA_COLLECTION, DataCollection), G_TYPE_CHECK_INSTANCE_CAST (event, TYPE_DATA_OBJECT, DataObject)), "global.contains(event)"); #line 496 "/home/jens/Source/shotwell/src/Event.vala" _tmp6_ = data_object_to_string (G_TYPE_CHECK_INSTANCE_CAST (event, TYPE_DATA_OBJECT, DataObject)); #line 496 "/home/jens/Source/shotwell/src/Event.vala" _tmp7_ = _tmp6_; #line 496 "/home/jens/Source/shotwell/src/Event.vala" g_debug ("Event.vala:496: Reconstituted event %s", _tmp7_); #line 496 "/home/jens/Source/shotwell/src/Event.vala" _g_free0 (_tmp7_); #line 498 "/home/jens/Source/shotwell/src/Event.vala" result = event; #line 498 "/home/jens/Source/shotwell/src/Event.vala" return result; #line 4105 "Event.c" } static gboolean event_real_has_links (ContainerSource* base) { Event * self; gboolean result = FALSE; gboolean _tmp0_ = FALSE; LibraryPhotoSourceCollection* _tmp1_; SourceBacklink* _tmp2_; SourceBacklink* _tmp3_; gboolean _tmp4_; #line 501 "/home/jens/Source/shotwell/src/Event.vala" self = G_TYPE_CHECK_INSTANCE_CAST (base, TYPE_EVENT, Event); #line 502 "/home/jens/Source/shotwell/src/Event.vala" _tmp1_ = library_photo_global; #line 502 "/home/jens/Source/shotwell/src/Event.vala" _tmp2_ = container_source_get_backlink (G_TYPE_CHECK_INSTANCE_CAST (self, TYPE_CONTAINER_SOURCE, ContainerSource)); #line 502 "/home/jens/Source/shotwell/src/Event.vala" _tmp3_ = _tmp2_; #line 502 "/home/jens/Source/shotwell/src/Event.vala" _tmp4_ = source_collection_has_backlink (G_TYPE_CHECK_INSTANCE_CAST (_tmp1_, TYPE_SOURCE_COLLECTION, SourceCollection), _tmp3_); #line 502 "/home/jens/Source/shotwell/src/Event.vala" _source_backlink_unref0 (_tmp3_); #line 502 "/home/jens/Source/shotwell/src/Event.vala" if (_tmp4_) { #line 502 "/home/jens/Source/shotwell/src/Event.vala" _tmp0_ = TRUE; #line 4135 "Event.c" } else { VideoSourceCollection* _tmp5_; SourceBacklink* _tmp6_; SourceBacklink* _tmp7_; #line 503 "/home/jens/Source/shotwell/src/Event.vala" _tmp5_ = video_global; #line 503 "/home/jens/Source/shotwell/src/Event.vala" _tmp6_ = container_source_get_backlink (G_TYPE_CHECK_INSTANCE_CAST (self, TYPE_CONTAINER_SOURCE, ContainerSource)); #line 503 "/home/jens/Source/shotwell/src/Event.vala" _tmp7_ = _tmp6_; #line 503 "/home/jens/Source/shotwell/src/Event.vala" _tmp0_ = source_collection_has_backlink (G_TYPE_CHECK_INSTANCE_CAST (_tmp5_, TYPE_SOURCE_COLLECTION, SourceCollection), _tmp7_); #line 503 "/home/jens/Source/shotwell/src/Event.vala" _source_backlink_unref0 (_tmp7_); #line 4150 "Event.c" } #line 502 "/home/jens/Source/shotwell/src/Event.vala" result = _tmp0_; #line 502 "/home/jens/Source/shotwell/src/Event.vala" return result; #line 4156 "Event.c" } static SourceBacklink* event_real_get_backlink (ContainerSource* base) { Event * self; SourceBacklink* result = NULL; SourceBacklink* _tmp0_; #line 506 "/home/jens/Source/shotwell/src/Event.vala" self = G_TYPE_CHECK_INSTANCE_CAST (base, TYPE_EVENT, Event); #line 507 "/home/jens/Source/shotwell/src/Event.vala" _tmp0_ = source_backlink_new_from_source (G_TYPE_CHECK_INSTANCE_CAST (self, TYPE_DATA_SOURCE, DataSource)); #line 507 "/home/jens/Source/shotwell/src/Event.vala" result = _tmp0_; #line 507 "/home/jens/Source/shotwell/src/Event.vala" return result; #line 4174 "Event.c" } static void event_real_break_link (ContainerSource* base, DataSource* source) { Event * self; #line 510 "/home/jens/Source/shotwell/src/Event.vala" self = G_TYPE_CHECK_INSTANCE_CAST (base, TYPE_EVENT, Event); #line 510 "/home/jens/Source/shotwell/src/Event.vala" g_return_if_fail (IS_DATA_SOURCE (source)); #line 511 "/home/jens/Source/shotwell/src/Event.vala" self->priv->unlinking = TRUE; #line 513 "/home/jens/Source/shotwell/src/Event.vala" media_source_set_event (G_TYPE_CHECK_INSTANCE_CAST (source, TYPE_MEDIA_SOURCE, MediaSource), NULL); #line 515 "/home/jens/Source/shotwell/src/Event.vala" self->priv->unlinking = FALSE; #line 4193 "Event.c" } static void event_real_break_link_many (ContainerSource* base, GeeCollection* sources) { Event * self; GeeArrayList* photos = NULL; GeeArrayList* _tmp0_; GeeArrayList* videos = NULL; GeeArrayList* _tmp1_; GError * _inner_error_ = NULL; #line 518 "/home/jens/Source/shotwell/src/Event.vala" self = G_TYPE_CHECK_INSTANCE_CAST (base, TYPE_EVENT, Event); #line 518 "/home/jens/Source/shotwell/src/Event.vala" g_return_if_fail (GEE_IS_COLLECTION (sources)); #line 519 "/home/jens/Source/shotwell/src/Event.vala" self->priv->unlinking = TRUE; #line 521 "/home/jens/Source/shotwell/src/Event.vala" _tmp0_ = gee_array_list_new (TYPE_LIBRARY_PHOTO, (GBoxedCopyFunc) g_object_ref, (GDestroyNotify) g_object_unref, NULL, NULL, NULL); #line 521 "/home/jens/Source/shotwell/src/Event.vala" photos = _tmp0_; #line 522 "/home/jens/Source/shotwell/src/Event.vala" _tmp1_ = gee_array_list_new (TYPE_VIDEO, (GBoxedCopyFunc) g_object_ref, (GDestroyNotify) g_object_unref, NULL, NULL, NULL); #line 522 "/home/jens/Source/shotwell/src/Event.vala" videos = _tmp1_; #line 523 "/home/jens/Source/shotwell/src/Event.vala" media_source_collection_filter_media (G_TYPE_CHECK_INSTANCE_CAST (sources, GEE_TYPE_COLLECTION, GeeCollection), G_TYPE_CHECK_INSTANCE_CAST (photos, GEE_TYPE_COLLECTION, GeeCollection), G_TYPE_CHECK_INSTANCE_CAST (videos, GEE_TYPE_COLLECTION, GeeCollection)); #line 4223 "Event.c" { LibraryPhotoSourceCollection* _tmp2_; TransactionController* _tmp3_; TransactionController* _tmp4_; #line 526 "/home/jens/Source/shotwell/src/Event.vala" _tmp2_ = library_photo_global; #line 526 "/home/jens/Source/shotwell/src/Event.vala" _tmp3_ = media_source_collection_get_transaction_controller (G_TYPE_CHECK_INSTANCE_CAST (_tmp2_, TYPE_MEDIA_SOURCE_COLLECTION, MediaSourceCollection)); #line 526 "/home/jens/Source/shotwell/src/Event.vala" _tmp4_ = _tmp3_; #line 526 "/home/jens/Source/shotwell/src/Event.vala" media_source_set_many_to_event (G_TYPE_CHECK_INSTANCE_CAST (photos, GEE_TYPE_COLLECTION, GeeCollection), NULL, _tmp4_, &_inner_error_); #line 526 "/home/jens/Source/shotwell/src/Event.vala" if (G_UNLIKELY (_inner_error_ != NULL)) { #line 4238 "Event.c" goto __catch445_g_error; } } goto __finally445; __catch445_g_error: { GError* err = NULL; GError* _tmp5_; const gchar* _tmp6_; gchar* _tmp7_; gchar* _tmp8_; #line 525 "/home/jens/Source/shotwell/src/Event.vala" err = _inner_error_; #line 525 "/home/jens/Source/shotwell/src/Event.vala" _inner_error_ = NULL; #line 528 "/home/jens/Source/shotwell/src/Event.vala" _tmp5_ = err; #line 528 "/home/jens/Source/shotwell/src/Event.vala" _tmp6_ = _tmp5_->message; #line 528 "/home/jens/Source/shotwell/src/Event.vala" _tmp7_ = g_strdup_printf ("%s", _tmp6_); #line 528 "/home/jens/Source/shotwell/src/Event.vala" _tmp8_ = _tmp7_; #line 528 "/home/jens/Source/shotwell/src/Event.vala" app_window_error_message (_tmp8_, NULL); #line 528 "/home/jens/Source/shotwell/src/Event.vala" _g_free0 (_tmp8_); #line 525 "/home/jens/Source/shotwell/src/Event.vala" _g_error_free0 (err); #line 4268 "Event.c" } __finally445: #line 525 "/home/jens/Source/shotwell/src/Event.vala" if (G_UNLIKELY (_inner_error_ != NULL)) { #line 525 "/home/jens/Source/shotwell/src/Event.vala" _g_object_unref0 (videos); #line 525 "/home/jens/Source/shotwell/src/Event.vala" _g_object_unref0 (photos); #line 525 "/home/jens/Source/shotwell/src/Event.vala" g_critical ("file %s: line %d: uncaught error: %s (%s, %d)", __FILE__, __LINE__, _inner_error_->message, g_quark_to_string (_inner_error_->domain), _inner_error_->code); #line 525 "/home/jens/Source/shotwell/src/Event.vala" g_clear_error (&_inner_error_); #line 525 "/home/jens/Source/shotwell/src/Event.vala" return; #line 4283 "Event.c" } { VideoSourceCollection* _tmp9_; TransactionController* _tmp10_; TransactionController* _tmp11_; #line 532 "/home/jens/Source/shotwell/src/Event.vala" _tmp9_ = video_global; #line 532 "/home/jens/Source/shotwell/src/Event.vala" _tmp10_ = media_source_collection_get_transaction_controller (G_TYPE_CHECK_INSTANCE_CAST (_tmp9_, TYPE_MEDIA_SOURCE_COLLECTION, MediaSourceCollection)); #line 532 "/home/jens/Source/shotwell/src/Event.vala" _tmp11_ = _tmp10_; #line 532 "/home/jens/Source/shotwell/src/Event.vala" media_source_set_many_to_event (G_TYPE_CHECK_INSTANCE_CAST (videos, GEE_TYPE_COLLECTION, GeeCollection), NULL, _tmp11_, &_inner_error_); #line 532 "/home/jens/Source/shotwell/src/Event.vala" if (G_UNLIKELY (_inner_error_ != NULL)) { #line 4299 "Event.c" goto __catch446_g_error; } } goto __finally446; __catch446_g_error: { GError* err = NULL; GError* _tmp12_; const gchar* _tmp13_; gchar* _tmp14_; gchar* _tmp15_; #line 531 "/home/jens/Source/shotwell/src/Event.vala" err = _inner_error_; #line 531 "/home/jens/Source/shotwell/src/Event.vala" _inner_error_ = NULL; #line 534 "/home/jens/Source/shotwell/src/Event.vala" _tmp12_ = err; #line 534 "/home/jens/Source/shotwell/src/Event.vala" _tmp13_ = _tmp12_->message; #line 534 "/home/jens/Source/shotwell/src/Event.vala" _tmp14_ = g_strdup_printf ("%s", _tmp13_); #line 534 "/home/jens/Source/shotwell/src/Event.vala" _tmp15_ = _tmp14_; #line 534 "/home/jens/Source/shotwell/src/Event.vala" app_window_error_message (_tmp15_, NULL); #line 534 "/home/jens/Source/shotwell/src/Event.vala" _g_free0 (_tmp15_); #line 531 "/home/jens/Source/shotwell/src/Event.vala" _g_error_free0 (err); #line 4329 "Event.c" } __finally446: #line 531 "/home/jens/Source/shotwell/src/Event.vala" if (G_UNLIKELY (_inner_error_ != NULL)) { #line 531 "/home/jens/Source/shotwell/src/Event.vala" _g_object_unref0 (videos); #line 531 "/home/jens/Source/shotwell/src/Event.vala" _g_object_unref0 (photos); #line 531 "/home/jens/Source/shotwell/src/Event.vala" g_critical ("file %s: line %d: uncaught error: %s (%s, %d)", __FILE__, __LINE__, _inner_error_->message, g_quark_to_string (_inner_error_->domain), _inner_error_->code); #line 531 "/home/jens/Source/shotwell/src/Event.vala" g_clear_error (&_inner_error_); #line 531 "/home/jens/Source/shotwell/src/Event.vala" return; #line 4344 "Event.c" } #line 537 "/home/jens/Source/shotwell/src/Event.vala" self->priv->unlinking = FALSE; #line 518 "/home/jens/Source/shotwell/src/Event.vala" _g_object_unref0 (videos); #line 518 "/home/jens/Source/shotwell/src/Event.vala" _g_object_unref0 (photos); #line 4352 "Event.c" } static void event_real_establish_link (ContainerSource* base, DataSource* source) { Event * self; #line 540 "/home/jens/Source/shotwell/src/Event.vala" self = G_TYPE_CHECK_INSTANCE_CAST (base, TYPE_EVENT, Event); #line 540 "/home/jens/Source/shotwell/src/Event.vala" g_return_if_fail (IS_DATA_SOURCE (source)); #line 541 "/home/jens/Source/shotwell/src/Event.vala" self->priv->relinking = TRUE; #line 543 "/home/jens/Source/shotwell/src/Event.vala" media_source_set_event (G_TYPE_CHECK_INSTANCE_CAST (source, TYPE_MEDIA_SOURCE, MediaSource), self); #line 545 "/home/jens/Source/shotwell/src/Event.vala" self->priv->relinking = FALSE; #line 4371 "Event.c" } static void event_real_establish_link_many (ContainerSource* base, GeeCollection* sources) { Event * self; GeeArrayList* photos = NULL; GeeArrayList* _tmp0_; GeeArrayList* videos = NULL; GeeArrayList* _tmp1_; GError * _inner_error_ = NULL; #line 548 "/home/jens/Source/shotwell/src/Event.vala" self = G_TYPE_CHECK_INSTANCE_CAST (base, TYPE_EVENT, Event); #line 548 "/home/jens/Source/shotwell/src/Event.vala" g_return_if_fail (GEE_IS_COLLECTION (sources)); #line 549 "/home/jens/Source/shotwell/src/Event.vala" self->priv->relinking = TRUE; #line 551 "/home/jens/Source/shotwell/src/Event.vala" _tmp0_ = gee_array_list_new (TYPE_LIBRARY_PHOTO, (GBoxedCopyFunc) g_object_ref, (GDestroyNotify) g_object_unref, NULL, NULL, NULL); #line 551 "/home/jens/Source/shotwell/src/Event.vala" photos = _tmp0_; #line 552 "/home/jens/Source/shotwell/src/Event.vala" _tmp1_ = gee_array_list_new (TYPE_VIDEO, (GBoxedCopyFunc) g_object_ref, (GDestroyNotify) g_object_unref, NULL, NULL, NULL); #line 552 "/home/jens/Source/shotwell/src/Event.vala" videos = _tmp1_; #line 553 "/home/jens/Source/shotwell/src/Event.vala" media_source_collection_filter_media (G_TYPE_CHECK_INSTANCE_CAST (sources, GEE_TYPE_COLLECTION, GeeCollection), G_TYPE_CHECK_INSTANCE_CAST (photos, GEE_TYPE_COLLECTION, GeeCollection), G_TYPE_CHECK_INSTANCE_CAST (videos, GEE_TYPE_COLLECTION, GeeCollection)); #line 4401 "Event.c" { LibraryPhotoSourceCollection* _tmp2_; TransactionController* _tmp3_; TransactionController* _tmp4_; #line 556 "/home/jens/Source/shotwell/src/Event.vala" _tmp2_ = library_photo_global; #line 556 "/home/jens/Source/shotwell/src/Event.vala" _tmp3_ = media_source_collection_get_transaction_controller (G_TYPE_CHECK_INSTANCE_CAST (_tmp2_, TYPE_MEDIA_SOURCE_COLLECTION, MediaSourceCollection)); #line 556 "/home/jens/Source/shotwell/src/Event.vala" _tmp4_ = _tmp3_; #line 556 "/home/jens/Source/shotwell/src/Event.vala" media_source_set_many_to_event (G_TYPE_CHECK_INSTANCE_CAST (photos, GEE_TYPE_COLLECTION, GeeCollection), self, _tmp4_, &_inner_error_); #line 556 "/home/jens/Source/shotwell/src/Event.vala" if (G_UNLIKELY (_inner_error_ != NULL)) { #line 4416 "Event.c" goto __catch447_g_error; } } goto __finally447; __catch447_g_error: { GError* err = NULL; GError* _tmp5_; const gchar* _tmp6_; gchar* _tmp7_; gchar* _tmp8_; #line 555 "/home/jens/Source/shotwell/src/Event.vala" err = _inner_error_; #line 555 "/home/jens/Source/shotwell/src/Event.vala" _inner_error_ = NULL; #line 558 "/home/jens/Source/shotwell/src/Event.vala" _tmp5_ = err; #line 558 "/home/jens/Source/shotwell/src/Event.vala" _tmp6_ = _tmp5_->message; #line 558 "/home/jens/Source/shotwell/src/Event.vala" _tmp7_ = g_strdup_printf ("%s", _tmp6_); #line 558 "/home/jens/Source/shotwell/src/Event.vala" _tmp8_ = _tmp7_; #line 558 "/home/jens/Source/shotwell/src/Event.vala" app_window_error_message (_tmp8_, NULL); #line 558 "/home/jens/Source/shotwell/src/Event.vala" _g_free0 (_tmp8_); #line 555 "/home/jens/Source/shotwell/src/Event.vala" _g_error_free0 (err); #line 4446 "Event.c" } __finally447: #line 555 "/home/jens/Source/shotwell/src/Event.vala" if (G_UNLIKELY (_inner_error_ != NULL)) { #line 555 "/home/jens/Source/shotwell/src/Event.vala" _g_object_unref0 (videos); #line 555 "/home/jens/Source/shotwell/src/Event.vala" _g_object_unref0 (photos); #line 555 "/home/jens/Source/shotwell/src/Event.vala" g_critical ("file %s: line %d: uncaught error: %s (%s, %d)", __FILE__, __LINE__, _inner_error_->message, g_quark_to_string (_inner_error_->domain), _inner_error_->code); #line 555 "/home/jens/Source/shotwell/src/Event.vala" g_clear_error (&_inner_error_); #line 555 "/home/jens/Source/shotwell/src/Event.vala" return; #line 4461 "Event.c" } { VideoSourceCollection* _tmp9_; TransactionController* _tmp10_; TransactionController* _tmp11_; #line 562 "/home/jens/Source/shotwell/src/Event.vala" _tmp9_ = video_global; #line 562 "/home/jens/Source/shotwell/src/Event.vala" _tmp10_ = media_source_collection_get_transaction_controller (G_TYPE_CHECK_INSTANCE_CAST (_tmp9_, TYPE_MEDIA_SOURCE_COLLECTION, MediaSourceCollection)); #line 562 "/home/jens/Source/shotwell/src/Event.vala" _tmp11_ = _tmp10_; #line 562 "/home/jens/Source/shotwell/src/Event.vala" media_source_set_many_to_event (G_TYPE_CHECK_INSTANCE_CAST (videos, GEE_TYPE_COLLECTION, GeeCollection), self, _tmp11_, &_inner_error_); #line 562 "/home/jens/Source/shotwell/src/Event.vala" if (G_UNLIKELY (_inner_error_ != NULL)) { #line 4477 "Event.c" goto __catch448_g_error; } } goto __finally448; __catch448_g_error: { GError* err = NULL; GError* _tmp12_; const gchar* _tmp13_; gchar* _tmp14_; gchar* _tmp15_; #line 561 "/home/jens/Source/shotwell/src/Event.vala" err = _inner_error_; #line 561 "/home/jens/Source/shotwell/src/Event.vala" _inner_error_ = NULL; #line 564 "/home/jens/Source/shotwell/src/Event.vala" _tmp12_ = err; #line 564 "/home/jens/Source/shotwell/src/Event.vala" _tmp13_ = _tmp12_->message; #line 564 "/home/jens/Source/shotwell/src/Event.vala" _tmp14_ = g_strdup_printf ("%s", _tmp13_); #line 564 "/home/jens/Source/shotwell/src/Event.vala" _tmp15_ = _tmp14_; #line 564 "/home/jens/Source/shotwell/src/Event.vala" app_window_error_message (_tmp15_, NULL); #line 564 "/home/jens/Source/shotwell/src/Event.vala" _g_free0 (_tmp15_); #line 561 "/home/jens/Source/shotwell/src/Event.vala" _g_error_free0 (err); #line 4507 "Event.c" } __finally448: #line 561 "/home/jens/Source/shotwell/src/Event.vala" if (G_UNLIKELY (_inner_error_ != NULL)) { #line 561 "/home/jens/Source/shotwell/src/Event.vala" _g_object_unref0 (videos); #line 561 "/home/jens/Source/shotwell/src/Event.vala" _g_object_unref0 (photos); #line 561 "/home/jens/Source/shotwell/src/Event.vala" g_critical ("file %s: line %d: uncaught error: %s (%s, %d)", __FILE__, __LINE__, _inner_error_->message, g_quark_to_string (_inner_error_->domain), _inner_error_->code); #line 561 "/home/jens/Source/shotwell/src/Event.vala" g_clear_error (&_inner_error_); #line 561 "/home/jens/Source/shotwell/src/Event.vala" return; #line 4522 "Event.c" } #line 567 "/home/jens/Source/shotwell/src/Event.vala" self->priv->relinking = FALSE; #line 548 "/home/jens/Source/shotwell/src/Event.vala" _g_object_unref0 (videos); #line 548 "/home/jens/Source/shotwell/src/Event.vala" _g_object_unref0 (photos); #line 4530 "Event.c" } static gchar* _vala_g_strjoinv (const gchar* separator, gchar** str_array, int str_array_length1) { gchar* result = NULL; gboolean _tmp0_ = FALSE; #line 1092 "/usr/share/vala-0.40/vapi/glib-2.0.vapi" if (separator == NULL) { #line 1093 "/usr/share/vala-0.40/vapi/glib-2.0.vapi" separator = ""; #line 4545 "Event.c" } #line 1095 "/usr/share/vala-0.40/vapi/glib-2.0.vapi" if (str_array != NULL) { #line 4549 "Event.c" gboolean _tmp1_ = FALSE; #line 1095 "/usr/share/vala-0.40/vapi/glib-2.0.vapi" if (str_array_length1 > 0) { #line 1095 "/usr/share/vala-0.40/vapi/glib-2.0.vapi" _tmp1_ = TRUE; #line 4555 "Event.c" } else { gboolean _tmp2_ = FALSE; #line 1095 "/usr/share/vala-0.40/vapi/glib-2.0.vapi" if (str_array_length1 == -1) { #line 4560 "Event.c" const gchar* _tmp3_; #line 1095 "/usr/share/vala-0.40/vapi/glib-2.0.vapi" _tmp3_ = str_array[0]; #line 1095 "/usr/share/vala-0.40/vapi/glib-2.0.vapi" _tmp2_ = _tmp3_ != NULL; #line 4566 "Event.c" } else { #line 1095 "/usr/share/vala-0.40/vapi/glib-2.0.vapi" _tmp2_ = FALSE; #line 4570 "Event.c" } #line 1095 "/usr/share/vala-0.40/vapi/glib-2.0.vapi" _tmp1_ = _tmp2_; #line 4574 "Event.c" } #line 1095 "/usr/share/vala-0.40/vapi/glib-2.0.vapi" _tmp0_ = _tmp1_; #line 4578 "Event.c" } else { #line 1095 "/usr/share/vala-0.40/vapi/glib-2.0.vapi" _tmp0_ = FALSE; #line 4582 "Event.c" } #line 1095 "/usr/share/vala-0.40/vapi/glib-2.0.vapi" if (_tmp0_) { #line 4586 "Event.c" gint i = 0; gsize len = 0UL; gint _tmp20_; gint _tmp22_; gint _tmp23_; gsize _tmp24_; gint _tmp25_; gint _tmp26_; gint _tmp27_; const gchar* res = NULL; gsize _tmp28_; void* _tmp29_; void* ptr = NULL; const gchar* _tmp30_; const gchar* _tmp31_; void* _tmp32_; const gchar* _tmp45_; #line 1097 "/usr/share/vala-0.40/vapi/glib-2.0.vapi" len = (gsize) 1; #line 4606 "Event.c" { gboolean _tmp4_ = FALSE; #line 1098 "/usr/share/vala-0.40/vapi/glib-2.0.vapi" i = 0; #line 1098 "/usr/share/vala-0.40/vapi/glib-2.0.vapi" _tmp4_ = TRUE; #line 1098 "/usr/share/vala-0.40/vapi/glib-2.0.vapi" while (TRUE) { #line 4615 "Event.c" gboolean _tmp6_ = FALSE; gboolean _tmp7_ = FALSE; gint _tmp12_ = 0; gint _tmp13_; const gchar* _tmp14_; gsize _tmp19_; #line 1098 "/usr/share/vala-0.40/vapi/glib-2.0.vapi" if (!_tmp4_) { #line 4624 "Event.c" gint _tmp5_; #line 1098 "/usr/share/vala-0.40/vapi/glib-2.0.vapi" _tmp5_ = i; #line 1098 "/usr/share/vala-0.40/vapi/glib-2.0.vapi" i = _tmp5_ + 1; #line 4630 "Event.c" } #line 1098 "/usr/share/vala-0.40/vapi/glib-2.0.vapi" _tmp4_ = FALSE; #line 1098 "/usr/share/vala-0.40/vapi/glib-2.0.vapi" if (str_array_length1 != -1) { #line 4636 "Event.c" gint _tmp8_; #line 1098 "/usr/share/vala-0.40/vapi/glib-2.0.vapi" _tmp8_ = i; #line 1098 "/usr/share/vala-0.40/vapi/glib-2.0.vapi" _tmp7_ = _tmp8_ < str_array_length1; #line 4642 "Event.c" } else { #line 1098 "/usr/share/vala-0.40/vapi/glib-2.0.vapi" _tmp7_ = FALSE; #line 4646 "Event.c" } #line 1098 "/usr/share/vala-0.40/vapi/glib-2.0.vapi" if (_tmp7_) { #line 1098 "/usr/share/vala-0.40/vapi/glib-2.0.vapi" _tmp6_ = TRUE; #line 4652 "Event.c" } else { gboolean _tmp9_ = FALSE; #line 1098 "/usr/share/vala-0.40/vapi/glib-2.0.vapi" if (str_array_length1 == -1) { #line 4657 "Event.c" gint _tmp10_; const gchar* _tmp11_; #line 1098 "/usr/share/vala-0.40/vapi/glib-2.0.vapi" _tmp10_ = i; #line 1098 "/usr/share/vala-0.40/vapi/glib-2.0.vapi" _tmp11_ = str_array[_tmp10_]; #line 1098 "/usr/share/vala-0.40/vapi/glib-2.0.vapi" _tmp9_ = _tmp11_ != NULL; #line 4666 "Event.c" } else { #line 1098 "/usr/share/vala-0.40/vapi/glib-2.0.vapi" _tmp9_ = FALSE; #line 4670 "Event.c" } #line 1098 "/usr/share/vala-0.40/vapi/glib-2.0.vapi" _tmp6_ = _tmp9_; #line 4674 "Event.c" } #line 1098 "/usr/share/vala-0.40/vapi/glib-2.0.vapi" if (!_tmp6_) { #line 1098 "/usr/share/vala-0.40/vapi/glib-2.0.vapi" break; #line 4680 "Event.c" } #line 1099 "/usr/share/vala-0.40/vapi/glib-2.0.vapi" _tmp13_ = i; #line 1099 "/usr/share/vala-0.40/vapi/glib-2.0.vapi" _tmp14_ = str_array[_tmp13_]; #line 1099 "/usr/share/vala-0.40/vapi/glib-2.0.vapi" if (_tmp14_ != NULL) { #line 4688 "Event.c" gint _tmp15_; const gchar* _tmp16_; gint _tmp17_; gint _tmp18_; #line 1099 "/usr/share/vala-0.40/vapi/glib-2.0.vapi" _tmp15_ = i; #line 1099 "/usr/share/vala-0.40/vapi/glib-2.0.vapi" _tmp16_ = str_array[_tmp15_]; #line 1099 "/usr/share/vala-0.40/vapi/glib-2.0.vapi" _tmp17_ = strlen ((const gchar*) _tmp16_); #line 1099 "/usr/share/vala-0.40/vapi/glib-2.0.vapi" _tmp18_ = _tmp17_; #line 1099 "/usr/share/vala-0.40/vapi/glib-2.0.vapi" _tmp12_ = _tmp18_; #line 4703 "Event.c" } else { #line 1099 "/usr/share/vala-0.40/vapi/glib-2.0.vapi" _tmp12_ = 0; #line 4707 "Event.c" } #line 1099 "/usr/share/vala-0.40/vapi/glib-2.0.vapi" _tmp19_ = len; #line 1099 "/usr/share/vala-0.40/vapi/glib-2.0.vapi" len = _tmp19_ + _tmp12_; #line 4713 "Event.c" } } #line 1101 "/usr/share/vala-0.40/vapi/glib-2.0.vapi" _tmp20_ = i; #line 1101 "/usr/share/vala-0.40/vapi/glib-2.0.vapi" if (_tmp20_ == 0) { #line 4720 "Event.c" gchar* _tmp21_; #line 1102 "/usr/share/vala-0.40/vapi/glib-2.0.vapi" _tmp21_ = g_strdup (""); #line 1102 "/usr/share/vala-0.40/vapi/glib-2.0.vapi" result = _tmp21_; #line 1102 "/usr/share/vala-0.40/vapi/glib-2.0.vapi" return result; #line 4728 "Event.c" } #line 1104 "/usr/share/vala-0.40/vapi/glib-2.0.vapi" _tmp22_ = i; #line 1104 "/usr/share/vala-0.40/vapi/glib-2.0.vapi" str_array_length1 = _tmp22_; #line 1104 "/usr/share/vala-0.40/vapi/glib-2.0.vapi" _tmp23_ = str_array_length1; #line 1105 "/usr/share/vala-0.40/vapi/glib-2.0.vapi" _tmp24_ = len; #line 1105 "/usr/share/vala-0.40/vapi/glib-2.0.vapi" _tmp25_ = strlen ((const gchar*) separator); #line 1105 "/usr/share/vala-0.40/vapi/glib-2.0.vapi" _tmp26_ = _tmp25_; #line 1105 "/usr/share/vala-0.40/vapi/glib-2.0.vapi" _tmp27_ = i; #line 1105 "/usr/share/vala-0.40/vapi/glib-2.0.vapi" len = _tmp24_ + (_tmp26_ * (_tmp27_ - 1)); #line 1107 "/usr/share/vala-0.40/vapi/glib-2.0.vapi" _tmp28_ = len; #line 1107 "/usr/share/vala-0.40/vapi/glib-2.0.vapi" _tmp29_ = g_malloc (_tmp28_); #line 1107 "/usr/share/vala-0.40/vapi/glib-2.0.vapi" res = _tmp29_; #line 1108 "/usr/share/vala-0.40/vapi/glib-2.0.vapi" _tmp30_ = res; #line 1108 "/usr/share/vala-0.40/vapi/glib-2.0.vapi" _tmp31_ = str_array[0]; #line 1108 "/usr/share/vala-0.40/vapi/glib-2.0.vapi" _tmp32_ = g_stpcpy ((void*) _tmp30_, (const gchar*) _tmp31_); #line 1108 "/usr/share/vala-0.40/vapi/glib-2.0.vapi" ptr = _tmp32_; #line 4760 "Event.c" { gboolean _tmp33_ = FALSE; #line 1109 "/usr/share/vala-0.40/vapi/glib-2.0.vapi" i = 1; #line 1109 "/usr/share/vala-0.40/vapi/glib-2.0.vapi" _tmp33_ = TRUE; #line 1109 "/usr/share/vala-0.40/vapi/glib-2.0.vapi" while (TRUE) { #line 4769 "Event.c" gint _tmp35_; void* _tmp36_; void* _tmp37_; const gchar* _tmp38_ = NULL; gint _tmp39_; const gchar* _tmp40_; void* _tmp43_; void* _tmp44_; #line 1109 "/usr/share/vala-0.40/vapi/glib-2.0.vapi" if (!_tmp33_) { #line 4780 "Event.c" gint _tmp34_; #line 1109 "/usr/share/vala-0.40/vapi/glib-2.0.vapi" _tmp34_ = i; #line 1109 "/usr/share/vala-0.40/vapi/glib-2.0.vapi" i = _tmp34_ + 1; #line 4786 "Event.c" } #line 1109 "/usr/share/vala-0.40/vapi/glib-2.0.vapi" _tmp33_ = FALSE; #line 1109 "/usr/share/vala-0.40/vapi/glib-2.0.vapi" _tmp35_ = i; #line 1109 "/usr/share/vala-0.40/vapi/glib-2.0.vapi" if (!(_tmp35_ < str_array_length1)) { #line 1109 "/usr/share/vala-0.40/vapi/glib-2.0.vapi" break; #line 4796 "Event.c" } #line 1110 "/usr/share/vala-0.40/vapi/glib-2.0.vapi" _tmp36_ = ptr; #line 1110 "/usr/share/vala-0.40/vapi/glib-2.0.vapi" _tmp37_ = g_stpcpy (_tmp36_, (const gchar*) separator); #line 1110 "/usr/share/vala-0.40/vapi/glib-2.0.vapi" ptr = _tmp37_; #line 1111 "/usr/share/vala-0.40/vapi/glib-2.0.vapi" _tmp39_ = i; #line 1111 "/usr/share/vala-0.40/vapi/glib-2.0.vapi" _tmp40_ = str_array[_tmp39_]; #line 1111 "/usr/share/vala-0.40/vapi/glib-2.0.vapi" if (_tmp40_ != NULL) { #line 4810 "Event.c" gint _tmp41_; const gchar* _tmp42_; #line 1111 "/usr/share/vala-0.40/vapi/glib-2.0.vapi" _tmp41_ = i; #line 1111 "/usr/share/vala-0.40/vapi/glib-2.0.vapi" _tmp42_ = str_array[_tmp41_]; #line 1111 "/usr/share/vala-0.40/vapi/glib-2.0.vapi" _tmp38_ = (const gchar*) _tmp42_; #line 4819 "Event.c" } else { #line 1111 "/usr/share/vala-0.40/vapi/glib-2.0.vapi" _tmp38_ = ""; #line 4823 "Event.c" } #line 1111 "/usr/share/vala-0.40/vapi/glib-2.0.vapi" _tmp43_ = ptr; #line 1111 "/usr/share/vala-0.40/vapi/glib-2.0.vapi" _tmp44_ = g_stpcpy (_tmp43_, _tmp38_); #line 1111 "/usr/share/vala-0.40/vapi/glib-2.0.vapi" ptr = _tmp44_; #line 4831 "Event.c" } } #line 1114 "/usr/share/vala-0.40/vapi/glib-2.0.vapi" _tmp45_ = res; #line 1114 "/usr/share/vala-0.40/vapi/glib-2.0.vapi" res = NULL; #line 1114 "/usr/share/vala-0.40/vapi/glib-2.0.vapi" result = (gchar*) _tmp45_; #line 1114 "/usr/share/vala-0.40/vapi/glib-2.0.vapi" return result; #line 4842 "Event.c" } else { gchar* _tmp46_; #line 1116 "/usr/share/vala-0.40/vapi/glib-2.0.vapi" _tmp46_ = g_strdup (""); #line 1116 "/usr/share/vala-0.40/vapi/glib-2.0.vapi" result = _tmp46_; #line 1116 "/usr/share/vala-0.40/vapi/glib-2.0.vapi" return result; #line 4851 "Event.c" } } static void event_update_indexable_keywords (Event* self) { gchar** components = NULL; gchar** _tmp0_; gint components_length1; gint _components_size_; gint i = 0; gchar* rawname = NULL; gchar* _tmp1_; const gchar* _tmp2_; gchar* comment = NULL; gchar* _tmp8_; const gchar* _tmp9_; gint _tmp15_; #line 570 "/home/jens/Source/shotwell/src/Event.vala" g_return_if_fail (IS_EVENT (self)); #line 571 "/home/jens/Source/shotwell/src/Event.vala" _tmp0_ = g_new0 (gchar*, 3 + 1); #line 571 "/home/jens/Source/shotwell/src/Event.vala" components = _tmp0_; #line 571 "/home/jens/Source/shotwell/src/Event.vala" components_length1 = 3; #line 571 "/home/jens/Source/shotwell/src/Event.vala" _components_size_ = components_length1; #line 572 "/home/jens/Source/shotwell/src/Event.vala" i = 0; #line 574 "/home/jens/Source/shotwell/src/Event.vala" _tmp1_ = event_get_raw_name (self); #line 574 "/home/jens/Source/shotwell/src/Event.vala" rawname = _tmp1_; #line 575 "/home/jens/Source/shotwell/src/Event.vala" _tmp2_ = rawname; #line 575 "/home/jens/Source/shotwell/src/Event.vala" if (_tmp2_ != NULL) { #line 4891 "Event.c" gchar** _tmp3_; gint _tmp3__length1; gint _tmp4_; const gchar* _tmp5_; gchar* _tmp6_; gchar* _tmp7_; #line 576 "/home/jens/Source/shotwell/src/Event.vala" _tmp3_ = components; #line 576 "/home/jens/Source/shotwell/src/Event.vala" _tmp3__length1 = components_length1; #line 576 "/home/jens/Source/shotwell/src/Event.vala" _tmp4_ = i; #line 576 "/home/jens/Source/shotwell/src/Event.vala" i = _tmp4_ + 1; #line 576 "/home/jens/Source/shotwell/src/Event.vala" _tmp5_ = rawname; #line 576 "/home/jens/Source/shotwell/src/Event.vala" _tmp6_ = g_strdup (_tmp5_); #line 576 "/home/jens/Source/shotwell/src/Event.vala" _g_free0 (_tmp3_[_tmp4_]); #line 576 "/home/jens/Source/shotwell/src/Event.vala" _tmp3_[_tmp4_] = _tmp6_; #line 576 "/home/jens/Source/shotwell/src/Event.vala" _tmp7_ = _tmp3_[_tmp4_]; #line 4916 "Event.c" } #line 578 "/home/jens/Source/shotwell/src/Event.vala" _tmp8_ = event_source_get_comment (G_TYPE_CHECK_INSTANCE_CAST (self, TYPE_EVENT_SOURCE, EventSource)); #line 578 "/home/jens/Source/shotwell/src/Event.vala" comment = _tmp8_; #line 579 "/home/jens/Source/shotwell/src/Event.vala" _tmp9_ = comment; #line 579 "/home/jens/Source/shotwell/src/Event.vala" if (_tmp9_ != NULL) { #line 4926 "Event.c" gchar** _tmp10_; gint _tmp10__length1; gint _tmp11_; const gchar* _tmp12_; gchar* _tmp13_; gchar* _tmp14_; #line 580 "/home/jens/Source/shotwell/src/Event.vala" _tmp10_ = components; #line 580 "/home/jens/Source/shotwell/src/Event.vala" _tmp10__length1 = components_length1; #line 580 "/home/jens/Source/shotwell/src/Event.vala" _tmp11_ = i; #line 580 "/home/jens/Source/shotwell/src/Event.vala" i = _tmp11_ + 1; #line 580 "/home/jens/Source/shotwell/src/Event.vala" _tmp12_ = comment; #line 580 "/home/jens/Source/shotwell/src/Event.vala" _tmp13_ = g_strdup (_tmp12_); #line 580 "/home/jens/Source/shotwell/src/Event.vala" _g_free0 (_tmp10_[_tmp11_]); #line 580 "/home/jens/Source/shotwell/src/Event.vala" _tmp10_[_tmp11_] = _tmp13_; #line 580 "/home/jens/Source/shotwell/src/Event.vala" _tmp14_ = _tmp10_[_tmp11_]; #line 4951 "Event.c" } #line 582 "/home/jens/Source/shotwell/src/Event.vala" _tmp15_ = i; #line 582 "/home/jens/Source/shotwell/src/Event.vala" if (_tmp15_ == 0) { #line 583 "/home/jens/Source/shotwell/src/Event.vala" _g_free0 (self->priv->indexable_keywords); #line 583 "/home/jens/Source/shotwell/src/Event.vala" self->priv->indexable_keywords = NULL; #line 4961 "Event.c" } else { gchar** _tmp16_; gint _tmp16__length1; gint _tmp17_; gchar* _tmp18_; gchar** _tmp19_; gint _tmp19__length1; gchar* _tmp20_; gchar* _tmp21_; gchar* _tmp22_; #line 585 "/home/jens/Source/shotwell/src/Event.vala" _tmp16_ = components; #line 585 "/home/jens/Source/shotwell/src/Event.vala" _tmp16__length1 = components_length1; #line 585 "/home/jens/Source/shotwell/src/Event.vala" _tmp17_ = i; #line 585 "/home/jens/Source/shotwell/src/Event.vala" _g_free0 (_tmp16_[_tmp17_]); #line 585 "/home/jens/Source/shotwell/src/Event.vala" _tmp16_[_tmp17_] = NULL; #line 585 "/home/jens/Source/shotwell/src/Event.vala" _tmp18_ = _tmp16_[_tmp17_]; #line 586 "/home/jens/Source/shotwell/src/Event.vala" _tmp19_ = components; #line 586 "/home/jens/Source/shotwell/src/Event.vala" _tmp19__length1 = components_length1; #line 586 "/home/jens/Source/shotwell/src/Event.vala" _tmp20_ = _vala_g_strjoinv (" ", _tmp19_, _tmp19__length1); #line 586 "/home/jens/Source/shotwell/src/Event.vala" _tmp21_ = _tmp20_; #line 586 "/home/jens/Source/shotwell/src/Event.vala" _tmp22_ = indexable_prepare_indexable_string (_tmp21_); #line 586 "/home/jens/Source/shotwell/src/Event.vala" _g_free0 (self->priv->indexable_keywords); #line 586 "/home/jens/Source/shotwell/src/Event.vala" self->priv->indexable_keywords = _tmp22_; #line 586 "/home/jens/Source/shotwell/src/Event.vala" _g_free0 (_tmp21_); #line 5000 "Event.c" } #line 570 "/home/jens/Source/shotwell/src/Event.vala" _g_free0 (comment); #line 570 "/home/jens/Source/shotwell/src/Event.vala" _g_free0 (rawname); #line 570 "/home/jens/Source/shotwell/src/Event.vala" components = (_vala_array_free (components, components_length1, (GDestroyNotify) g_free), NULL); #line 5008 "Event.c" } static const gchar* event_real_get_indexable_keywords (Indexable* base) { Event * self; const gchar* result = NULL; const gchar* _tmp0_; #line 590 "/home/jens/Source/shotwell/src/Event.vala" self = G_TYPE_CHECK_INSTANCE_CAST (base, TYPE_EVENT, Event); #line 591 "/home/jens/Source/shotwell/src/Event.vala" _tmp0_ = self->priv->indexable_keywords; #line 591 "/home/jens/Source/shotwell/src/Event.vala" result = _tmp0_; #line 591 "/home/jens/Source/shotwell/src/Event.vala" return result; #line 5026 "Event.c" } static void g_time_local (time_t time, struct tm* result) { struct tm _result_ = {0}; struct tm _tmp0_ = {0}; #line 2866 "/usr/share/vala-0.40/vapi/glib-2.0.vapi" localtime_r (&time, &_tmp0_); #line 2866 "/usr/share/vala-0.40/vapi/glib-2.0.vapi" _result_ = _tmp0_; #line 2867 "/usr/share/vala-0.40/vapi/glib-2.0.vapi" *result = _result_; #line 2867 "/usr/share/vala-0.40/vapi/glib-2.0.vapi" return; #line 5044 "Event.c" } gboolean event_is_in_starting_day (Event* self, time_t time) { gboolean result = FALSE; ViewCollection* _tmp0_; MediaSource* earliest_media = NULL; ViewCollection* _tmp1_; DataObject* _tmp2_; DataView* _tmp3_; DataSource* _tmp4_; MediaSource* _tmp5_; struct tm earliest_tm = {0}; MediaSource* _tmp6_; struct tm _tmp7_ = {0}; struct tm start_boundary_tm = {0}; struct tm _tmp8_; gint _tmp9_; struct tm _tmp10_; gint _tmp11_; struct tm _tmp12_; gint _tmp13_; time_t start_boundary = 0; struct tm _tmp14_; gint _tmp15_; time_t end_boundary = 0; time_t _tmp17_; gboolean _tmp18_ = FALSE; time_t _tmp19_; #line 594 "/home/jens/Source/shotwell/src/Event.vala" g_return_val_if_fail (IS_EVENT (self), FALSE); #line 599 "/home/jens/Source/shotwell/src/Event.vala" _tmp0_ = self->priv->view; #line 599 "/home/jens/Source/shotwell/src/Event.vala" if (data_collection_get_count (G_TYPE_CHECK_INSTANCE_CAST (_tmp0_, TYPE_DATA_COLLECTION, DataCollection)) == 0) { #line 600 "/home/jens/Source/shotwell/src/Event.vala" result = FALSE; #line 600 "/home/jens/Source/shotwell/src/Event.vala" return result; #line 5087 "Event.c" } #line 603 "/home/jens/Source/shotwell/src/Event.vala" _tmp1_ = self->priv->view; #line 603 "/home/jens/Source/shotwell/src/Event.vala" _tmp2_ = data_collection_get_at (G_TYPE_CHECK_INSTANCE_CAST (_tmp1_, TYPE_DATA_COLLECTION, DataCollection), 0); #line 603 "/home/jens/Source/shotwell/src/Event.vala" _tmp3_ = G_TYPE_CHECK_INSTANCE_CAST (_tmp2_, TYPE_DATA_VIEW, DataView); #line 603 "/home/jens/Source/shotwell/src/Event.vala" _tmp4_ = data_view_get_source (_tmp3_); #line 603 "/home/jens/Source/shotwell/src/Event.vala" _tmp5_ = G_TYPE_CHECK_INSTANCE_CAST (_tmp4_, TYPE_MEDIA_SOURCE, MediaSource); #line 603 "/home/jens/Source/shotwell/src/Event.vala" _g_object_unref0 (_tmp3_); #line 603 "/home/jens/Source/shotwell/src/Event.vala" earliest_media = _tmp5_; #line 604 "/home/jens/Source/shotwell/src/Event.vala" _tmp6_ = earliest_media; #line 604 "/home/jens/Source/shotwell/src/Event.vala" g_time_local (media_source_get_exposure_time (_tmp6_), &_tmp7_); #line 604 "/home/jens/Source/shotwell/src/Event.vala" earliest_tm = _tmp7_; #line 607 "/home/jens/Source/shotwell/src/Event.vala" memset (&start_boundary_tm, 0, sizeof (struct tm)); #line 608 "/home/jens/Source/shotwell/src/Event.vala" start_boundary_tm.tm_sec = 0; #line 609 "/home/jens/Source/shotwell/src/Event.vala" start_boundary_tm.tm_min = 0; #line 610 "/home/jens/Source/shotwell/src/Event.vala" start_boundary_tm.tm_hour = EVENT_EVENT_BOUNDARY_HOUR; #line 611 "/home/jens/Source/shotwell/src/Event.vala" _tmp8_ = earliest_tm; #line 611 "/home/jens/Source/shotwell/src/Event.vala" _tmp9_ = _tmp8_.tm_mday; #line 611 "/home/jens/Source/shotwell/src/Event.vala" start_boundary_tm.tm_mday = _tmp9_; #line 612 "/home/jens/Source/shotwell/src/Event.vala" _tmp10_ = earliest_tm; #line 612 "/home/jens/Source/shotwell/src/Event.vala" _tmp11_ = _tmp10_.tm_mon; #line 612 "/home/jens/Source/shotwell/src/Event.vala" start_boundary_tm.tm_mon = _tmp11_; #line 613 "/home/jens/Source/shotwell/src/Event.vala" _tmp12_ = earliest_tm; #line 613 "/home/jens/Source/shotwell/src/Event.vala" _tmp13_ = _tmp12_.tm_year; #line 613 "/home/jens/Source/shotwell/src/Event.vala" start_boundary_tm.tm_year = _tmp13_; #line 614 "/home/jens/Source/shotwell/src/Event.vala" start_boundary_tm.tm_isdst = -1; #line 616 "/home/jens/Source/shotwell/src/Event.vala" start_boundary = mktime (&start_boundary_tm); #line 620 "/home/jens/Source/shotwell/src/Event.vala" _tmp14_ = earliest_tm; #line 620 "/home/jens/Source/shotwell/src/Event.vala" _tmp15_ = _tmp14_.tm_hour; #line 620 "/home/jens/Source/shotwell/src/Event.vala" if (_tmp15_ < EVENT_EVENT_BOUNDARY_HOUR) { #line 5145 "Event.c" time_t _tmp16_; #line 621 "/home/jens/Source/shotwell/src/Event.vala" g_debug ("Event.vala:621: Hour before boundary, shifting back one day"); #line 622 "/home/jens/Source/shotwell/src/Event.vala" _tmp16_ = start_boundary; #line 622 "/home/jens/Source/shotwell/src/Event.vala" start_boundary = _tmp16_ - EVENT_TIME_T_DAY; #line 5153 "Event.c" } #line 625 "/home/jens/Source/shotwell/src/Event.vala" _tmp17_ = start_boundary; #line 625 "/home/jens/Source/shotwell/src/Event.vala" end_boundary = (_tmp17_ + EVENT_TIME_T_DAY) - 1; #line 627 "/home/jens/Source/shotwell/src/Event.vala" _tmp19_ = start_boundary; #line 627 "/home/jens/Source/shotwell/src/Event.vala" if (time >= _tmp19_) { #line 5163 "Event.c" time_t _tmp20_; #line 627 "/home/jens/Source/shotwell/src/Event.vala" _tmp20_ = end_boundary; #line 627 "/home/jens/Source/shotwell/src/Event.vala" _tmp18_ = time <= _tmp20_; #line 5169 "Event.c" } else { #line 627 "/home/jens/Source/shotwell/src/Event.vala" _tmp18_ = FALSE; #line 5173 "Event.c" } #line 627 "/home/jens/Source/shotwell/src/Event.vala" result = _tmp18_; #line 627 "/home/jens/Source/shotwell/src/Event.vala" _g_object_unref0 (earliest_media); #line 627 "/home/jens/Source/shotwell/src/Event.vala" return result; #line 5181 "Event.c" } static Event* event_generate_event (MediaSource* media, ViewCollection* events_so_far, const gchar* event_name, gboolean* new_event) { gboolean _vala_new_event = FALSE; Event* result = NULL; time_t exposure_time = 0; gboolean _tmp0_ = FALSE; time_t _tmp1_; gint count = 0; GError * _inner_error_ = NULL; #line 633 "/home/jens/Source/shotwell/src/Event.vala" g_return_val_if_fail (IS_MEDIA_SOURCE (media), NULL); #line 633 "/home/jens/Source/shotwell/src/Event.vala" g_return_val_if_fail (IS_VIEW_COLLECTION (events_so_far), NULL); #line 635 "/home/jens/Source/shotwell/src/Event.vala" exposure_time = media_source_get_exposure_time (media); #line 637 "/home/jens/Source/shotwell/src/Event.vala" _tmp1_ = exposure_time; #line 637 "/home/jens/Source/shotwell/src/Event.vala" if (_tmp1_ == ((time_t) 0)) { #line 637 "/home/jens/Source/shotwell/src/Event.vala" _tmp0_ = event_name == NULL; #line 5210 "Event.c" } else { #line 637 "/home/jens/Source/shotwell/src/Event.vala" _tmp0_ = FALSE; #line 5214 "Event.c" } #line 637 "/home/jens/Source/shotwell/src/Event.vala" if (_tmp0_) { #line 5218 "Event.c" gchar* _tmp2_; gchar* _tmp3_; #line 638 "/home/jens/Source/shotwell/src/Event.vala" _tmp2_ = data_object_to_string (G_TYPE_CHECK_INSTANCE_CAST (media, TYPE_DATA_OBJECT, DataObject)); #line 638 "/home/jens/Source/shotwell/src/Event.vala" _tmp3_ = _tmp2_; #line 638 "/home/jens/Source/shotwell/src/Event.vala" g_debug ("Event.vala:638: Skipping event assignment to %s: no exposure time and " \ "no event name", _tmp3_); #line 638 "/home/jens/Source/shotwell/src/Event.vala" _g_free0 (_tmp3_); #line 639 "/home/jens/Source/shotwell/src/Event.vala" _vala_new_event = FALSE; #line 641 "/home/jens/Source/shotwell/src/Event.vala" result = NULL; #line 641 "/home/jens/Source/shotwell/src/Event.vala" if (new_event) { #line 641 "/home/jens/Source/shotwell/src/Event.vala" *new_event = _vala_new_event; #line 5237 "Event.c" } #line 641 "/home/jens/Source/shotwell/src/Event.vala" return result; #line 5241 "Event.c" } #line 644 "/home/jens/Source/shotwell/src/Event.vala" count = data_collection_get_count (G_TYPE_CHECK_INSTANCE_CAST (events_so_far, TYPE_DATA_COLLECTION, DataCollection)); #line 5245 "Event.c" { gint ctr = 0; #line 645 "/home/jens/Source/shotwell/src/Event.vala" ctr = 0; #line 5250 "Event.c" { gboolean _tmp4_ = FALSE; #line 645 "/home/jens/Source/shotwell/src/Event.vala" _tmp4_ = TRUE; #line 645 "/home/jens/Source/shotwell/src/Event.vala" while (TRUE) { #line 5257 "Event.c" gint _tmp6_; gint _tmp7_; Event* event = NULL; gint _tmp8_; DataObject* _tmp9_; EventView* _tmp10_; DataSource* _tmp11_; Event* _tmp12_; gboolean _tmp13_ = FALSE; gboolean _tmp14_ = FALSE; gboolean _tmp15_ = FALSE; #line 645 "/home/jens/Source/shotwell/src/Event.vala" if (!_tmp4_) { #line 5271 "Event.c" gint _tmp5_; #line 645 "/home/jens/Source/shotwell/src/Event.vala" _tmp5_ = ctr; #line 645 "/home/jens/Source/shotwell/src/Event.vala" ctr = _tmp5_ + 1; #line 5277 "Event.c" } #line 645 "/home/jens/Source/shotwell/src/Event.vala" _tmp4_ = FALSE; #line 645 "/home/jens/Source/shotwell/src/Event.vala" _tmp6_ = ctr; #line 645 "/home/jens/Source/shotwell/src/Event.vala" _tmp7_ = count; #line 645 "/home/jens/Source/shotwell/src/Event.vala" if (!(_tmp6_ < _tmp7_)) { #line 645 "/home/jens/Source/shotwell/src/Event.vala" break; #line 5289 "Event.c" } #line 646 "/home/jens/Source/shotwell/src/Event.vala" _tmp8_ = ctr; #line 646 "/home/jens/Source/shotwell/src/Event.vala" _tmp9_ = data_collection_get_at (G_TYPE_CHECK_INSTANCE_CAST (events_so_far, TYPE_DATA_COLLECTION, DataCollection), _tmp8_); #line 646 "/home/jens/Source/shotwell/src/Event.vala" _tmp10_ = G_TYPE_CHECK_INSTANCE_CAST (_tmp9_, TYPE_EVENT_VIEW, EventView); #line 646 "/home/jens/Source/shotwell/src/Event.vala" _tmp11_ = data_view_get_source (G_TYPE_CHECK_INSTANCE_CAST (_tmp10_, TYPE_DATA_VIEW, DataView)); #line 646 "/home/jens/Source/shotwell/src/Event.vala" _tmp12_ = G_TYPE_CHECK_INSTANCE_CAST (_tmp11_, TYPE_EVENT, Event); #line 646 "/home/jens/Source/shotwell/src/Event.vala" _g_object_unref0 (_tmp10_); #line 646 "/home/jens/Source/shotwell/src/Event.vala" event = _tmp12_; #line 648 "/home/jens/Source/shotwell/src/Event.vala" if (event_name != NULL) { #line 5307 "Event.c" Event* _tmp16_; #line 648 "/home/jens/Source/shotwell/src/Event.vala" _tmp16_ = event; #line 648 "/home/jens/Source/shotwell/src/Event.vala" _tmp15_ = event_has_name (_tmp16_); #line 5313 "Event.c" } else { #line 648 "/home/jens/Source/shotwell/src/Event.vala" _tmp15_ = FALSE; #line 5317 "Event.c" } #line 648 "/home/jens/Source/shotwell/src/Event.vala" if (_tmp15_) { #line 5321 "Event.c" Event* _tmp17_; gchar* _tmp18_; gchar* _tmp19_; #line 648 "/home/jens/Source/shotwell/src/Event.vala" _tmp17_ = event; #line 648 "/home/jens/Source/shotwell/src/Event.vala" _tmp18_ = data_object_get_name (G_TYPE_CHECK_INSTANCE_CAST (_tmp17_, TYPE_DATA_OBJECT, DataObject)); #line 648 "/home/jens/Source/shotwell/src/Event.vala" _tmp19_ = _tmp18_; #line 648 "/home/jens/Source/shotwell/src/Event.vala" _tmp14_ = g_strcmp0 (event_name, _tmp19_) == 0; #line 648 "/home/jens/Source/shotwell/src/Event.vala" _g_free0 (_tmp19_); #line 5335 "Event.c" } else { #line 648 "/home/jens/Source/shotwell/src/Event.vala" _tmp14_ = FALSE; #line 5339 "Event.c" } #line 648 "/home/jens/Source/shotwell/src/Event.vala" if (_tmp14_) { #line 648 "/home/jens/Source/shotwell/src/Event.vala" _tmp13_ = TRUE; #line 5345 "Event.c" } else { Event* _tmp20_; time_t _tmp21_; #line 649 "/home/jens/Source/shotwell/src/Event.vala" _tmp20_ = event; #line 649 "/home/jens/Source/shotwell/src/Event.vala" _tmp21_ = exposure_time; #line 649 "/home/jens/Source/shotwell/src/Event.vala" _tmp13_ = event_is_in_starting_day (_tmp20_, _tmp21_); #line 5355 "Event.c" } #line 648 "/home/jens/Source/shotwell/src/Event.vala" if (_tmp13_) { #line 650 "/home/jens/Source/shotwell/src/Event.vala" _vala_new_event = FALSE; #line 652 "/home/jens/Source/shotwell/src/Event.vala" result = event; #line 652 "/home/jens/Source/shotwell/src/Event.vala" if (new_event) { #line 652 "/home/jens/Source/shotwell/src/Event.vala" *new_event = _vala_new_event; #line 5367 "Event.c" } #line 652 "/home/jens/Source/shotwell/src/Event.vala" return result; #line 5371 "Event.c" } #line 645 "/home/jens/Source/shotwell/src/Event.vala" _g_object_unref0 (event); #line 5375 "Event.c" } } } { EventRow* _tmp22_ = NULL; EventTable* _tmp23_; EventTable* _tmp24_; gchar* _tmp25_; gchar* _tmp26_; EventRow* _tmp27_; EventRow* _tmp28_; Event* event = NULL; Event* _tmp29_; Event* _tmp31_; EventView* _tmp32_; EventView* _tmp33_; #line 658 "/home/jens/Source/shotwell/src/Event.vala" _tmp23_ = event_table_get_instance (); #line 658 "/home/jens/Source/shotwell/src/Event.vala" _tmp24_ = _tmp23_; #line 658 "/home/jens/Source/shotwell/src/Event.vala" _tmp25_ = data_source_get_source_id (G_TYPE_CHECK_INSTANCE_CAST (media, TYPE_DATA_SOURCE, DataSource)); #line 658 "/home/jens/Source/shotwell/src/Event.vala" _tmp26_ = _tmp25_; #line 658 "/home/jens/Source/shotwell/src/Event.vala" _tmp27_ = event_table_create (_tmp24_, _tmp26_, NULL, &_inner_error_); #line 658 "/home/jens/Source/shotwell/src/Event.vala" _tmp28_ = _tmp27_; #line 658 "/home/jens/Source/shotwell/src/Event.vala" _g_free0 (_tmp26_); #line 658 "/home/jens/Source/shotwell/src/Event.vala" _database_table_unref0 (_tmp24_); #line 658 "/home/jens/Source/shotwell/src/Event.vala" _tmp22_ = _tmp28_; #line 658 "/home/jens/Source/shotwell/src/Event.vala" if (G_UNLIKELY (_inner_error_ != NULL)) { #line 658 "/home/jens/Source/shotwell/src/Event.vala" if (_inner_error_->domain == DATABASE_ERROR) { #line 5414 "Event.c" goto __catch449_database_error; } #line 658 "/home/jens/Source/shotwell/src/Event.vala" g_critical ("file %s: line %d: unexpected error: %s (%s, %d)", __FILE__, __LINE__, _inner_error_->message, g_quark_to_string (_inner_error_->domain), _inner_error_->code); #line 658 "/home/jens/Source/shotwell/src/Event.vala" g_clear_error (&_inner_error_); #line 658 "/home/jens/Source/shotwell/src/Event.vala" return NULL; #line 5423 "Event.c" } #line 658 "/home/jens/Source/shotwell/src/Event.vala" _tmp29_ = event_new (_tmp22_, DATA_OBJECT_INVALID_OBJECT_ID); #line 658 "/home/jens/Source/shotwell/src/Event.vala" event = _tmp29_; #line 659 "/home/jens/Source/shotwell/src/Event.vala" if (event_name != NULL) { #line 5431 "Event.c" Event* _tmp30_; #line 660 "/home/jens/Source/shotwell/src/Event.vala" _tmp30_ = event; #line 660 "/home/jens/Source/shotwell/src/Event.vala" event_rename (_tmp30_, event_name); #line 5437 "Event.c" } #line 662 "/home/jens/Source/shotwell/src/Event.vala" _tmp31_ = event; #line 662 "/home/jens/Source/shotwell/src/Event.vala" _tmp32_ = event_view_new (G_TYPE_CHECK_INSTANCE_CAST (_tmp31_, TYPE_EVENT_SOURCE, EventSource)); #line 662 "/home/jens/Source/shotwell/src/Event.vala" _tmp33_ = _tmp32_; #line 662 "/home/jens/Source/shotwell/src/Event.vala" data_collection_add (G_TYPE_CHECK_INSTANCE_CAST (events_so_far, TYPE_DATA_COLLECTION, DataCollection), G_TYPE_CHECK_INSTANCE_CAST (_tmp33_, TYPE_DATA_OBJECT, DataObject)); #line 662 "/home/jens/Source/shotwell/src/Event.vala" _g_object_unref0 (_tmp33_); #line 664 "/home/jens/Source/shotwell/src/Event.vala" _vala_new_event = TRUE; #line 665 "/home/jens/Source/shotwell/src/Event.vala" result = event; #line 665 "/home/jens/Source/shotwell/src/Event.vala" _event_row_unref0 (_tmp22_); #line 665 "/home/jens/Source/shotwell/src/Event.vala" if (new_event) { #line 665 "/home/jens/Source/shotwell/src/Event.vala" *new_event = _vala_new_event; #line 5459 "Event.c" } #line 665 "/home/jens/Source/shotwell/src/Event.vala" return result; #line 5463 "Event.c" } goto __finally449; __catch449_database_error: { GError* err = NULL; GError* _tmp34_; #line 657 "/home/jens/Source/shotwell/src/Event.vala" err = _inner_error_; #line 657 "/home/jens/Source/shotwell/src/Event.vala" _inner_error_ = NULL; #line 667 "/home/jens/Source/shotwell/src/Event.vala" _tmp34_ = err; #line 667 "/home/jens/Source/shotwell/src/Event.vala" app_window_database_error (_tmp34_); #line 657 "/home/jens/Source/shotwell/src/Event.vala" _g_error_free0 (err); #line 5480 "Event.c" } __finally449: #line 657 "/home/jens/Source/shotwell/src/Event.vala" if (G_UNLIKELY (_inner_error_ != NULL)) { #line 657 "/home/jens/Source/shotwell/src/Event.vala" g_critical ("file %s: line %d: uncaught error: %s (%s, %d)", __FILE__, __LINE__, _inner_error_->message, g_quark_to_string (_inner_error_->domain), _inner_error_->code); #line 657 "/home/jens/Source/shotwell/src/Event.vala" g_clear_error (&_inner_error_); #line 657 "/home/jens/Source/shotwell/src/Event.vala" return NULL; #line 5491 "Event.c" } #line 670 "/home/jens/Source/shotwell/src/Event.vala" _vala_new_event = FALSE; #line 672 "/home/jens/Source/shotwell/src/Event.vala" result = NULL; #line 672 "/home/jens/Source/shotwell/src/Event.vala" if (new_event) { #line 672 "/home/jens/Source/shotwell/src/Event.vala" *new_event = _vala_new_event; #line 5501 "Event.c" } #line 672 "/home/jens/Source/shotwell/src/Event.vala" return result; #line 5505 "Event.c" } void event_generate_single_event (MediaSource* media, ViewCollection* events_so_far, const gchar* event_name) { Event* _tmp0_; Event* _tmp1_; gboolean _tmp2_; gboolean new_event = FALSE; Event* event = NULL; gboolean _tmp3_ = FALSE; Event* _tmp4_; Event* _tmp5_; Event* _tmp6_; gboolean _tmp7_; #line 675 "/home/jens/Source/shotwell/src/Event.vala" g_return_if_fail (IS_MEDIA_SOURCE (media)); #line 675 "/home/jens/Source/shotwell/src/Event.vala" g_return_if_fail (IS_VIEW_COLLECTION (events_so_far)); #line 678 "/home/jens/Source/shotwell/src/Event.vala" _tmp0_ = media_source_get_event (media); #line 678 "/home/jens/Source/shotwell/src/Event.vala" _tmp1_ = _tmp0_; #line 678 "/home/jens/Source/shotwell/src/Event.vala" _tmp2_ = _tmp1_ != NULL; #line 678 "/home/jens/Source/shotwell/src/Event.vala" _g_object_unref0 (_tmp1_); #line 678 "/home/jens/Source/shotwell/src/Event.vala" if (_tmp2_) { #line 679 "/home/jens/Source/shotwell/src/Event.vala" return; #line 5540 "Event.c" } #line 682 "/home/jens/Source/shotwell/src/Event.vala" _tmp4_ = event_generate_event (media, events_so_far, event_name, &_tmp3_); #line 682 "/home/jens/Source/shotwell/src/Event.vala" new_event = _tmp3_; #line 682 "/home/jens/Source/shotwell/src/Event.vala" event = _tmp4_; #line 683 "/home/jens/Source/shotwell/src/Event.vala" _tmp5_ = event; #line 683 "/home/jens/Source/shotwell/src/Event.vala" if (_tmp5_ == NULL) { #line 684 "/home/jens/Source/shotwell/src/Event.vala" _g_object_unref0 (event); #line 684 "/home/jens/Source/shotwell/src/Event.vala" return; #line 5556 "Event.c" } #line 686 "/home/jens/Source/shotwell/src/Event.vala" _tmp6_ = event; #line 686 "/home/jens/Source/shotwell/src/Event.vala" media_source_set_event (media, _tmp6_); #line 688 "/home/jens/Source/shotwell/src/Event.vala" _tmp7_ = new_event; #line 688 "/home/jens/Source/shotwell/src/Event.vala" if (_tmp7_) { #line 5566 "Event.c" EventSourceCollection* _tmp8_; Event* _tmp9_; #line 689 "/home/jens/Source/shotwell/src/Event.vala" _tmp8_ = event_global; #line 689 "/home/jens/Source/shotwell/src/Event.vala" _tmp9_ = event; #line 689 "/home/jens/Source/shotwell/src/Event.vala" data_collection_add (G_TYPE_CHECK_INSTANCE_CAST (_tmp8_, TYPE_DATA_COLLECTION, DataCollection), G_TYPE_CHECK_INSTANCE_CAST (_tmp9_, TYPE_DATA_OBJECT, DataObject)); #line 5575 "Event.c" } #line 675 "/home/jens/Source/shotwell/src/Event.vala" _g_object_unref0 (event); #line 5579 "Event.c" } void event_generate_many_events (GeeCollection* sources, ViewCollection* events_so_far) { GeeCollection* to_add = NULL; GeeArrayList* _tmp0_; GeeCollection* _tmp18_; gint _tmp19_; gint _tmp20_; #line 692 "/home/jens/Source/shotwell/src/Event.vala" g_return_if_fail (GEE_IS_COLLECTION (sources)); #line 692 "/home/jens/Source/shotwell/src/Event.vala" g_return_if_fail (IS_VIEW_COLLECTION (events_so_far)); #line 693 "/home/jens/Source/shotwell/src/Event.vala" _tmp0_ = gee_array_list_new (TYPE_EVENT, (GBoxedCopyFunc) g_object_ref, (GDestroyNotify) g_object_unref, NULL, NULL, NULL); #line 693 "/home/jens/Source/shotwell/src/Event.vala" to_add = G_TYPE_CHECK_INSTANCE_CAST (_tmp0_, GEE_TYPE_COLLECTION, GeeCollection); #line 5600 "Event.c" { GeeIterator* _media_it = NULL; GeeIterator* _tmp1_; #line 694 "/home/jens/Source/shotwell/src/Event.vala" _tmp1_ = gee_iterable_iterator (G_TYPE_CHECK_INSTANCE_CAST (sources, GEE_TYPE_ITERABLE, GeeIterable)); #line 694 "/home/jens/Source/shotwell/src/Event.vala" _media_it = _tmp1_; #line 694 "/home/jens/Source/shotwell/src/Event.vala" while (TRUE) { #line 5610 "Event.c" GeeIterator* _tmp2_; MediaSource* media = NULL; GeeIterator* _tmp3_; gpointer _tmp4_; MediaSource* _tmp5_; Event* _tmp6_; Event* _tmp7_; gboolean _tmp8_; gboolean new_event = FALSE; Event* event = NULL; MediaSource* _tmp9_; gboolean _tmp10_ = FALSE; Event* _tmp11_; Event* _tmp12_; MediaSource* _tmp13_; Event* _tmp14_; gboolean _tmp15_; #line 694 "/home/jens/Source/shotwell/src/Event.vala" _tmp2_ = _media_it; #line 694 "/home/jens/Source/shotwell/src/Event.vala" if (!gee_iterator_next (_tmp2_)) { #line 694 "/home/jens/Source/shotwell/src/Event.vala" break; #line 5634 "Event.c" } #line 694 "/home/jens/Source/shotwell/src/Event.vala" _tmp3_ = _media_it; #line 694 "/home/jens/Source/shotwell/src/Event.vala" _tmp4_ = gee_iterator_get (_tmp3_); #line 694 "/home/jens/Source/shotwell/src/Event.vala" media = (MediaSource*) _tmp4_; #line 696 "/home/jens/Source/shotwell/src/Event.vala" _tmp5_ = media; #line 696 "/home/jens/Source/shotwell/src/Event.vala" _tmp6_ = media_source_get_event (_tmp5_); #line 696 "/home/jens/Source/shotwell/src/Event.vala" _tmp7_ = _tmp6_; #line 696 "/home/jens/Source/shotwell/src/Event.vala" _tmp8_ = _tmp7_ != NULL; #line 696 "/home/jens/Source/shotwell/src/Event.vala" _g_object_unref0 (_tmp7_); #line 696 "/home/jens/Source/shotwell/src/Event.vala" if (_tmp8_) { #line 697 "/home/jens/Source/shotwell/src/Event.vala" _g_object_unref0 (media); #line 697 "/home/jens/Source/shotwell/src/Event.vala" continue; #line 5658 "Event.c" } #line 700 "/home/jens/Source/shotwell/src/Event.vala" _tmp9_ = media; #line 700 "/home/jens/Source/shotwell/src/Event.vala" _tmp11_ = event_generate_event (_tmp9_, events_so_far, NULL, &_tmp10_); #line 700 "/home/jens/Source/shotwell/src/Event.vala" new_event = _tmp10_; #line 700 "/home/jens/Source/shotwell/src/Event.vala" event = _tmp11_; #line 701 "/home/jens/Source/shotwell/src/Event.vala" _tmp12_ = event; #line 701 "/home/jens/Source/shotwell/src/Event.vala" if (_tmp12_ == NULL) { #line 702 "/home/jens/Source/shotwell/src/Event.vala" _g_object_unref0 (event); #line 702 "/home/jens/Source/shotwell/src/Event.vala" _g_object_unref0 (media); #line 702 "/home/jens/Source/shotwell/src/Event.vala" continue; #line 5678 "Event.c" } #line 704 "/home/jens/Source/shotwell/src/Event.vala" _tmp13_ = media; #line 704 "/home/jens/Source/shotwell/src/Event.vala" _tmp14_ = event; #line 704 "/home/jens/Source/shotwell/src/Event.vala" media_source_set_event (_tmp13_, _tmp14_); #line 706 "/home/jens/Source/shotwell/src/Event.vala" _tmp15_ = new_event; #line 706 "/home/jens/Source/shotwell/src/Event.vala" if (_tmp15_) { #line 5690 "Event.c" GeeCollection* _tmp16_; Event* _tmp17_; #line 707 "/home/jens/Source/shotwell/src/Event.vala" _tmp16_ = to_add; #line 707 "/home/jens/Source/shotwell/src/Event.vala" _tmp17_ = event; #line 707 "/home/jens/Source/shotwell/src/Event.vala" gee_collection_add (_tmp16_, _tmp17_); #line 5699 "Event.c" } #line 694 "/home/jens/Source/shotwell/src/Event.vala" _g_object_unref0 (event); #line 694 "/home/jens/Source/shotwell/src/Event.vala" _g_object_unref0 (media); #line 5705 "Event.c" } #line 694 "/home/jens/Source/shotwell/src/Event.vala" _g_object_unref0 (_media_it); #line 5709 "Event.c" } #line 710 "/home/jens/Source/shotwell/src/Event.vala" _tmp18_ = to_add; #line 710 "/home/jens/Source/shotwell/src/Event.vala" _tmp19_ = gee_collection_get_size (_tmp18_); #line 710 "/home/jens/Source/shotwell/src/Event.vala" _tmp20_ = _tmp19_; #line 710 "/home/jens/Source/shotwell/src/Event.vala" if (_tmp20_ > 0) { #line 5719 "Event.c" EventSourceCollection* _tmp21_; GeeCollection* _tmp22_; GeeCollection* _tmp23_; GeeCollection* _tmp24_; #line 711 "/home/jens/Source/shotwell/src/Event.vala" _tmp21_ = event_global; #line 711 "/home/jens/Source/shotwell/src/Event.vala" _tmp22_ = to_add; #line 711 "/home/jens/Source/shotwell/src/Event.vala" _tmp23_ = data_collection_add_many (G_TYPE_CHECK_INSTANCE_CAST (_tmp21_, TYPE_DATA_COLLECTION, DataCollection), _tmp22_, NULL, NULL); #line 711 "/home/jens/Source/shotwell/src/Event.vala" _tmp24_ = _tmp23_; #line 711 "/home/jens/Source/shotwell/src/Event.vala" _g_object_unref0 (_tmp24_); #line 5734 "Event.c" } #line 692 "/home/jens/Source/shotwell/src/Event.vala" _g_object_unref0 (to_add); #line 5738 "Event.c" } void event_get_event_id (Event* self, EventID* result) { EventID _tmp0_; #line 714 "/home/jens/Source/shotwell/src/Event.vala" g_return_if_fail (IS_EVENT (self)); #line 715 "/home/jens/Source/shotwell/src/Event.vala" _tmp0_ = self->priv->event_id; #line 715 "/home/jens/Source/shotwell/src/Event.vala" *result = _tmp0_; #line 715 "/home/jens/Source/shotwell/src/Event.vala" return; #line 5755 "Event.c" } static SourceSnapshot* event_real_save_snapshot (DataSource* base) { Event * self; SourceSnapshot* result = NULL; EventEventSnapshot* _tmp0_; #line 718 "/home/jens/Source/shotwell/src/Event.vala" self = G_TYPE_CHECK_INSTANCE_CAST (base, TYPE_EVENT, Event); #line 719 "/home/jens/Source/shotwell/src/Event.vala" _tmp0_ = event_event_snapshot_new (self); #line 719 "/home/jens/Source/shotwell/src/Event.vala" result = G_TYPE_CHECK_INSTANCE_CAST (_tmp0_, TYPE_SOURCE_SNAPSHOT, SourceSnapshot); #line 719 "/home/jens/Source/shotwell/src/Event.vala" return result; #line 5773 "Event.c" } static SourceProxy* event_real_get_proxy (Proxyable* base) { Event * self; SourceProxy* result = NULL; EventEventProxy* _tmp0_; #line 722 "/home/jens/Source/shotwell/src/Event.vala" self = G_TYPE_CHECK_INSTANCE_CAST (base, TYPE_EVENT, Event); #line 723 "/home/jens/Source/shotwell/src/Event.vala" _tmp0_ = event_event_proxy_new (self); #line 723 "/home/jens/Source/shotwell/src/Event.vala" result = G_TYPE_CHECK_INSTANCE_CAST (_tmp0_, TYPE_SOURCE_PROXY, SourceProxy); #line 723 "/home/jens/Source/shotwell/src/Event.vala" return result; #line 5791 "Event.c" } static gboolean event_real_equals (DataSource* base, DataSource* source) { Event * self; gboolean result = FALSE; Event* event = NULL; Event* _tmp0_; Event* _tmp1_; #line 726 "/home/jens/Source/shotwell/src/Event.vala" self = G_TYPE_CHECK_INSTANCE_CAST (base, TYPE_EVENT, Event); #line 726 "/home/jens/Source/shotwell/src/Event.vala" g_return_val_if_fail ((source == NULL) || IS_DATA_SOURCE (source), FALSE); #line 728 "/home/jens/Source/shotwell/src/Event.vala" _tmp0_ = _g_object_ref0 (G_TYPE_CHECK_INSTANCE_TYPE (source, TYPE_EVENT) ? ((Event*) source) : NULL); #line 728 "/home/jens/Source/shotwell/src/Event.vala" event = _tmp0_; #line 729 "/home/jens/Source/shotwell/src/Event.vala" _tmp1_ = event; #line 729 "/home/jens/Source/shotwell/src/Event.vala" if (_tmp1_ != NULL) { #line 5816 "Event.c" Event* _tmp2_; #line 730 "/home/jens/Source/shotwell/src/Event.vala" _tmp2_ = event; #line 730 "/home/jens/Source/shotwell/src/Event.vala" if (self != _tmp2_) { #line 5822 "Event.c" EventID _tmp3_; gint64 _tmp4_; Event* _tmp5_; EventID _tmp6_; gint64 _tmp7_; #line 731 "/home/jens/Source/shotwell/src/Event.vala" _tmp3_ = self->priv->event_id; #line 731 "/home/jens/Source/shotwell/src/Event.vala" _tmp4_ = _tmp3_.id; #line 731 "/home/jens/Source/shotwell/src/Event.vala" _tmp5_ = event; #line 731 "/home/jens/Source/shotwell/src/Event.vala" _tmp6_ = _tmp5_->priv->event_id; #line 731 "/home/jens/Source/shotwell/src/Event.vala" _tmp7_ = _tmp6_.id; #line 731 "/home/jens/Source/shotwell/src/Event.vala" _vala_assert (_tmp4_ != _tmp7_, "event_id.id != event.event_id.id"); #line 5840 "Event.c" } } #line 735 "/home/jens/Source/shotwell/src/Event.vala" result = DATA_SOURCE_CLASS (event_parent_class)->equals (G_TYPE_CHECK_INSTANCE_CAST (G_TYPE_CHECK_INSTANCE_CAST (self, TYPE_EVENT_SOURCE, EventSource), TYPE_DATA_SOURCE, DataSource), source); #line 735 "/home/jens/Source/shotwell/src/Event.vala" _g_object_unref0 (event); #line 735 "/home/jens/Source/shotwell/src/Event.vala" return result; #line 5849 "Event.c" } static gchar* event_real_to_string (DataObject* base) { Event * self; gchar* result = NULL; EventID _tmp0_; gint64 _tmp1_; gchar* _tmp2_; gchar* _tmp3_; gchar* _tmp4_; gchar* _tmp5_; gchar* _tmp6_; gchar* _tmp7_; gchar* _tmp8_; gchar* _tmp9_; #line 738 "/home/jens/Source/shotwell/src/Event.vala" self = G_TYPE_CHECK_INSTANCE_CAST (base, TYPE_EVENT, Event); #line 739 "/home/jens/Source/shotwell/src/Event.vala" _tmp0_ = self->priv->event_id; #line 739 "/home/jens/Source/shotwell/src/Event.vala" _tmp1_ = _tmp0_.id; #line 739 "/home/jens/Source/shotwell/src/Event.vala" _tmp2_ = g_strdup_printf ("%" G_GINT64_FORMAT, _tmp1_); #line 739 "/home/jens/Source/shotwell/src/Event.vala" _tmp3_ = _tmp2_; #line 739 "/home/jens/Source/shotwell/src/Event.vala" _tmp4_ = g_strdup_printf ("%" G_GINT64_FORMAT, data_object_get_object_id (G_TYPE_CHECK_INSTANCE_CAST (self, TYPE_DATA_OBJECT, DataObject))); #line 739 "/home/jens/Source/shotwell/src/Event.vala" _tmp5_ = _tmp4_; #line 739 "/home/jens/Source/shotwell/src/Event.vala" _tmp6_ = data_object_get_name (G_TYPE_CHECK_INSTANCE_CAST (self, TYPE_DATA_OBJECT, DataObject)); #line 739 "/home/jens/Source/shotwell/src/Event.vala" _tmp7_ = _tmp6_; #line 739 "/home/jens/Source/shotwell/src/Event.vala" _tmp8_ = g_strdup_printf ("Event [%s/%s] %s", _tmp3_, _tmp5_, _tmp7_); #line 739 "/home/jens/Source/shotwell/src/Event.vala" _tmp9_ = _tmp8_; #line 739 "/home/jens/Source/shotwell/src/Event.vala" _g_free0 (_tmp7_); #line 739 "/home/jens/Source/shotwell/src/Event.vala" _g_free0 (_tmp5_); #line 739 "/home/jens/Source/shotwell/src/Event.vala" _g_free0 (_tmp3_); #line 739 "/home/jens/Source/shotwell/src/Event.vala" result = _tmp9_; #line 739 "/home/jens/Source/shotwell/src/Event.vala" return result; #line 5900 "Event.c" } gboolean event_has_name (Event* self) { gboolean result = FALSE; gboolean _tmp0_ = FALSE; const gchar* _tmp1_; #line 742 "/home/jens/Source/shotwell/src/Event.vala" g_return_val_if_fail (IS_EVENT (self), FALSE); #line 743 "/home/jens/Source/shotwell/src/Event.vala" _tmp1_ = self->priv->raw_name; #line 743 "/home/jens/Source/shotwell/src/Event.vala" if (_tmp1_ != NULL) { #line 5916 "Event.c" const gchar* _tmp2_; gint _tmp3_; gint _tmp4_; #line 743 "/home/jens/Source/shotwell/src/Event.vala" _tmp2_ = self->priv->raw_name; #line 743 "/home/jens/Source/shotwell/src/Event.vala" _tmp3_ = strlen (_tmp2_); #line 743 "/home/jens/Source/shotwell/src/Event.vala" _tmp4_ = _tmp3_; #line 743 "/home/jens/Source/shotwell/src/Event.vala" _tmp0_ = _tmp4_ > 0; #line 5928 "Event.c" } else { #line 743 "/home/jens/Source/shotwell/src/Event.vala" _tmp0_ = FALSE; #line 5932 "Event.c" } #line 743 "/home/jens/Source/shotwell/src/Event.vala" result = _tmp0_; #line 743 "/home/jens/Source/shotwell/src/Event.vala" return result; #line 5938 "Event.c" } static gchar* event_real_get_name (DataObject* base) { Event * self; gchar* result = NULL; gchar* datestring = NULL; gchar* _tmp1_; gchar* _tmp2_ = NULL; const gchar* _tmp3_; #line 746 "/home/jens/Source/shotwell/src/Event.vala" self = G_TYPE_CHECK_INSTANCE_CAST (base, TYPE_EVENT, Event); #line 747 "/home/jens/Source/shotwell/src/Event.vala" if (event_has_name (self)) { #line 5955 "Event.c" gchar* _tmp0_; #line 748 "/home/jens/Source/shotwell/src/Event.vala" _tmp0_ = event_get_raw_name (self); #line 748 "/home/jens/Source/shotwell/src/Event.vala" result = _tmp0_; #line 748 "/home/jens/Source/shotwell/src/Event.vala" return result; #line 5963 "Event.c" } #line 751 "/home/jens/Source/shotwell/src/Event.vala" _tmp1_ = event_get_formatted_daterange (self); #line 751 "/home/jens/Source/shotwell/src/Event.vala" datestring = _tmp1_; #line 753 "/home/jens/Source/shotwell/src/Event.vala" _tmp3_ = datestring; #line 753 "/home/jens/Source/shotwell/src/Event.vala" if (!is_string_empty (_tmp3_)) { #line 5973 "Event.c" const gchar* _tmp4_; gchar* _tmp5_; #line 753 "/home/jens/Source/shotwell/src/Event.vala" _tmp4_ = datestring; #line 753 "/home/jens/Source/shotwell/src/Event.vala" _tmp5_ = g_strdup (_tmp4_); #line 753 "/home/jens/Source/shotwell/src/Event.vala" _g_free0 (_tmp2_); #line 753 "/home/jens/Source/shotwell/src/Event.vala" _tmp2_ = _tmp5_; #line 5984 "Event.c" } else { EventID _tmp6_; gint64 _tmp7_; gchar* _tmp8_; gchar* _tmp9_; gchar* _tmp10_; #line 753 "/home/jens/Source/shotwell/src/Event.vala" _tmp6_ = self->priv->event_id; #line 753 "/home/jens/Source/shotwell/src/Event.vala" _tmp7_ = _tmp6_.id; #line 753 "/home/jens/Source/shotwell/src/Event.vala" _tmp8_ = g_strdup_printf ("%" G_GINT64_FORMAT, _tmp7_); #line 753 "/home/jens/Source/shotwell/src/Event.vala" _tmp9_ = _tmp8_; #line 753 "/home/jens/Source/shotwell/src/Event.vala" _tmp10_ = g_strdup_printf (_ ("Event %s"), _tmp9_); #line 753 "/home/jens/Source/shotwell/src/Event.vala" _g_free0 (_tmp2_); #line 753 "/home/jens/Source/shotwell/src/Event.vala" _tmp2_ = _tmp10_; #line 753 "/home/jens/Source/shotwell/src/Event.vala" _g_free0 (_tmp9_); #line 6007 "Event.c" } #line 753 "/home/jens/Source/shotwell/src/Event.vala" result = _tmp2_; #line 753 "/home/jens/Source/shotwell/src/Event.vala" _g_free0 (datestring); #line 753 "/home/jens/Source/shotwell/src/Event.vala" return result; #line 6015 "Event.c" } gchar* event_get_formatted_daterange (Event* self) { gchar* result = NULL; time_t start_time = 0; time_t end_time = 0; gboolean _tmp0_ = FALSE; time_t _tmp1_; gboolean _tmp3_ = FALSE; time_t _tmp4_; struct tm start = {0}; time_t _tmp9_; struct tm _tmp10_ = {0}; struct tm end = {0}; time_t _tmp11_; struct tm _tmp12_ = {0}; gboolean _tmp13_ = FALSE; gboolean _tmp14_ = FALSE; struct tm _tmp15_; gint _tmp16_; struct tm _tmp17_; gint _tmp18_; struct tm _tmp30_; struct tm _tmp31_; gchar* _tmp32_; #line 756 "/home/jens/Source/shotwell/src/Event.vala" g_return_val_if_fail (IS_EVENT (self), NULL); #line 757 "/home/jens/Source/shotwell/src/Event.vala" start_time = event_source_get_start_time (G_TYPE_CHECK_INSTANCE_CAST (self, TYPE_EVENT_SOURCE, EventSource)); #line 758 "/home/jens/Source/shotwell/src/Event.vala" end_time = event_source_get_end_time (G_TYPE_CHECK_INSTANCE_CAST (self, TYPE_EVENT_SOURCE, EventSource)); #line 760 "/home/jens/Source/shotwell/src/Event.vala" _tmp1_ = end_time; #line 760 "/home/jens/Source/shotwell/src/Event.vala" if (_tmp1_ == ((time_t) 0)) { #line 6054 "Event.c" time_t _tmp2_; #line 760 "/home/jens/Source/shotwell/src/Event.vala" _tmp2_ = start_time; #line 760 "/home/jens/Source/shotwell/src/Event.vala" _tmp0_ = _tmp2_ == ((time_t) 0); #line 6060 "Event.c" } else { #line 760 "/home/jens/Source/shotwell/src/Event.vala" _tmp0_ = FALSE; #line 6064 "Event.c" } #line 760 "/home/jens/Source/shotwell/src/Event.vala" if (_tmp0_) { #line 761 "/home/jens/Source/shotwell/src/Event.vala" result = NULL; #line 761 "/home/jens/Source/shotwell/src/Event.vala" return result; #line 6072 "Event.c" } #line 763 "/home/jens/Source/shotwell/src/Event.vala" _tmp4_ = end_time; #line 763 "/home/jens/Source/shotwell/src/Event.vala" if (_tmp4_ == ((time_t) 0)) { #line 6078 "Event.c" time_t _tmp5_; #line 763 "/home/jens/Source/shotwell/src/Event.vala" _tmp5_ = start_time; #line 763 "/home/jens/Source/shotwell/src/Event.vala" _tmp3_ = _tmp5_ != ((time_t) 0); #line 6084 "Event.c" } else { #line 763 "/home/jens/Source/shotwell/src/Event.vala" _tmp3_ = FALSE; #line 6088 "Event.c" } #line 763 "/home/jens/Source/shotwell/src/Event.vala" if (_tmp3_) { #line 6092 "Event.c" time_t _tmp6_; struct tm _tmp7_ = {0}; gchar* _tmp8_; #line 764 "/home/jens/Source/shotwell/src/Event.vala" _tmp6_ = start_time; #line 764 "/home/jens/Source/shotwell/src/Event.vala" g_time_local (_tmp6_, &_tmp7_); #line 764 "/home/jens/Source/shotwell/src/Event.vala" _tmp8_ = format_local_date (&_tmp7_); #line 764 "/home/jens/Source/shotwell/src/Event.vala" result = _tmp8_; #line 764 "/home/jens/Source/shotwell/src/Event.vala" return result; #line 6106 "Event.c" } #line 766 "/home/jens/Source/shotwell/src/Event.vala" _tmp9_ = start_time; #line 766 "/home/jens/Source/shotwell/src/Event.vala" g_time_local (_tmp9_, &_tmp10_); #line 766 "/home/jens/Source/shotwell/src/Event.vala" start = _tmp10_; #line 767 "/home/jens/Source/shotwell/src/Event.vala" _tmp11_ = end_time; #line 767 "/home/jens/Source/shotwell/src/Event.vala" g_time_local (_tmp11_, &_tmp12_); #line 767 "/home/jens/Source/shotwell/src/Event.vala" end = _tmp12_; #line 769 "/home/jens/Source/shotwell/src/Event.vala" _tmp15_ = start; #line 769 "/home/jens/Source/shotwell/src/Event.vala" _tmp16_ = _tmp15_.tm_mday; #line 769 "/home/jens/Source/shotwell/src/Event.vala" _tmp17_ = end; #line 769 "/home/jens/Source/shotwell/src/Event.vala" _tmp18_ = _tmp17_.tm_mday; #line 769 "/home/jens/Source/shotwell/src/Event.vala" if (_tmp16_ == _tmp18_) { #line 6130 "Event.c" struct tm _tmp19_; gint _tmp20_; struct tm _tmp21_; gint _tmp22_; #line 769 "/home/jens/Source/shotwell/src/Event.vala" _tmp19_ = start; #line 769 "/home/jens/Source/shotwell/src/Event.vala" _tmp20_ = _tmp19_.tm_mon; #line 769 "/home/jens/Source/shotwell/src/Event.vala" _tmp21_ = end; #line 769 "/home/jens/Source/shotwell/src/Event.vala" _tmp22_ = _tmp21_.tm_mon; #line 769 "/home/jens/Source/shotwell/src/Event.vala" _tmp14_ = _tmp20_ == _tmp22_; #line 6145 "Event.c" } else { #line 769 "/home/jens/Source/shotwell/src/Event.vala" _tmp14_ = FALSE; #line 6149 "Event.c" } #line 769 "/home/jens/Source/shotwell/src/Event.vala" if (_tmp14_) { #line 6153 "Event.c" struct tm _tmp23_; gint _tmp24_; struct tm _tmp25_; gint _tmp26_; #line 769 "/home/jens/Source/shotwell/src/Event.vala" _tmp23_ = start; #line 769 "/home/jens/Source/shotwell/src/Event.vala" _tmp24_ = _tmp23_.tm_mday; #line 769 "/home/jens/Source/shotwell/src/Event.vala" _tmp25_ = end; #line 769 "/home/jens/Source/shotwell/src/Event.vala" _tmp26_ = _tmp25_.tm_mday; #line 769 "/home/jens/Source/shotwell/src/Event.vala" _tmp13_ = _tmp24_ == _tmp26_; #line 6168 "Event.c" } else { #line 769 "/home/jens/Source/shotwell/src/Event.vala" _tmp13_ = FALSE; #line 6172 "Event.c" } #line 769 "/home/jens/Source/shotwell/src/Event.vala" if (_tmp13_) { #line 6176 "Event.c" time_t _tmp27_; struct tm _tmp28_ = {0}; gchar* _tmp29_; #line 770 "/home/jens/Source/shotwell/src/Event.vala" _tmp27_ = start_time; #line 770 "/home/jens/Source/shotwell/src/Event.vala" g_time_local (_tmp27_, &_tmp28_); #line 770 "/home/jens/Source/shotwell/src/Event.vala" _tmp29_ = format_local_date (&_tmp28_); #line 770 "/home/jens/Source/shotwell/src/Event.vala" result = _tmp29_; #line 770 "/home/jens/Source/shotwell/src/Event.vala" return result; #line 6190 "Event.c" } #line 772 "/home/jens/Source/shotwell/src/Event.vala" _tmp30_ = start; #line 772 "/home/jens/Source/shotwell/src/Event.vala" _tmp31_ = end; #line 772 "/home/jens/Source/shotwell/src/Event.vala" _tmp32_ = format_local_datespan (&_tmp30_, &_tmp31_); #line 772 "/home/jens/Source/shotwell/src/Event.vala" result = _tmp32_; #line 772 "/home/jens/Source/shotwell/src/Event.vala" return result; #line 6202 "Event.c" } gchar* event_get_raw_name (Event* self) { gchar* result = NULL; const gchar* _tmp0_; gchar* _tmp1_; #line 775 "/home/jens/Source/shotwell/src/Event.vala" g_return_val_if_fail (IS_EVENT (self), NULL); #line 776 "/home/jens/Source/shotwell/src/Event.vala" _tmp0_ = self->priv->raw_name; #line 776 "/home/jens/Source/shotwell/src/Event.vala" _tmp1_ = g_strdup (_tmp0_); #line 776 "/home/jens/Source/shotwell/src/Event.vala" result = _tmp1_; #line 776 "/home/jens/Source/shotwell/src/Event.vala" return result; #line 6222 "Event.c" } static gchar* event_real_get_comment (EventSource* base) { Event * self; gchar* result = NULL; const gchar* _tmp0_; gchar* _tmp1_; #line 779 "/home/jens/Source/shotwell/src/Event.vala" self = G_TYPE_CHECK_INSTANCE_CAST (base, TYPE_EVENT, Event); #line 780 "/home/jens/Source/shotwell/src/Event.vala" _tmp0_ = self->priv->comment; #line 780 "/home/jens/Source/shotwell/src/Event.vala" _tmp1_ = g_strdup (_tmp0_); #line 780 "/home/jens/Source/shotwell/src/Event.vala" result = _tmp1_; #line 780 "/home/jens/Source/shotwell/src/Event.vala" return result; #line 6243 "Event.c" } gboolean event_rename (Event* self, const gchar* name) { gboolean result = FALSE; gchar* new_name = NULL; gchar* _tmp0_; const gchar* _tmp1_; gchar* _tmp2_; gchar* _tmp3_; gboolean _tmp4_; gboolean renamed = FALSE; EventTable* _tmp6_; EventID _tmp7_; const gchar* _tmp8_; gboolean _tmp9_; #line 783 "/home/jens/Source/shotwell/src/Event.vala" g_return_val_if_fail (IS_EVENT (self), FALSE); #line 784 "/home/jens/Source/shotwell/src/Event.vala" _tmp0_ = event_prep_event_name (name); #line 784 "/home/jens/Source/shotwell/src/Event.vala" new_name = _tmp0_; #line 787 "/home/jens/Source/shotwell/src/Event.vala" _tmp1_ = new_name; #line 787 "/home/jens/Source/shotwell/src/Event.vala" _tmp2_ = event_get_formatted_daterange (self); #line 787 "/home/jens/Source/shotwell/src/Event.vala" _tmp3_ = _tmp2_; #line 787 "/home/jens/Source/shotwell/src/Event.vala" _tmp4_ = g_strcmp0 (_tmp1_, _tmp3_) == 0; #line 787 "/home/jens/Source/shotwell/src/Event.vala" _g_free0 (_tmp3_); #line 787 "/home/jens/Source/shotwell/src/Event.vala" if (_tmp4_) { #line 6281 "Event.c" gchar* _tmp5_; #line 788 "/home/jens/Source/shotwell/src/Event.vala" _tmp5_ = g_strdup (""); #line 788 "/home/jens/Source/shotwell/src/Event.vala" _g_free0 (new_name); #line 788 "/home/jens/Source/shotwell/src/Event.vala" new_name = _tmp5_; #line 6289 "Event.c" } #line 791 "/home/jens/Source/shotwell/src/Event.vala" _tmp6_ = event_event_table; #line 791 "/home/jens/Source/shotwell/src/Event.vala" _tmp7_ = self->priv->event_id; #line 791 "/home/jens/Source/shotwell/src/Event.vala" _tmp8_ = new_name; #line 791 "/home/jens/Source/shotwell/src/Event.vala" renamed = event_table_rename (_tmp6_, &_tmp7_, _tmp8_); #line 792 "/home/jens/Source/shotwell/src/Event.vala" _tmp9_ = renamed; #line 792 "/home/jens/Source/shotwell/src/Event.vala" if (_tmp9_) { #line 6303 "Event.c" const gchar* _tmp10_; gchar* _tmp11_; Alteration* _tmp12_; Alteration* _tmp13_; #line 793 "/home/jens/Source/shotwell/src/Event.vala" _tmp10_ = new_name; #line 793 "/home/jens/Source/shotwell/src/Event.vala" _tmp11_ = g_strdup (_tmp10_); #line 793 "/home/jens/Source/shotwell/src/Event.vala" _g_free0 (self->priv->raw_name); #line 793 "/home/jens/Source/shotwell/src/Event.vala" self->priv->raw_name = _tmp11_; #line 794 "/home/jens/Source/shotwell/src/Event.vala" event_update_indexable_keywords (self); #line 795 "/home/jens/Source/shotwell/src/Event.vala" _tmp12_ = alteration_new_from_list ("metadata:name, indexable:keywords"); #line 795 "/home/jens/Source/shotwell/src/Event.vala" _tmp13_ = _tmp12_; #line 795 "/home/jens/Source/shotwell/src/Event.vala" data_object_notify_altered (G_TYPE_CHECK_INSTANCE_CAST (self, TYPE_DATA_OBJECT, DataObject), _tmp13_); #line 795 "/home/jens/Source/shotwell/src/Event.vala" _alteration_unref0 (_tmp13_); #line 6326 "Event.c" } #line 798 "/home/jens/Source/shotwell/src/Event.vala" result = renamed; #line 798 "/home/jens/Source/shotwell/src/Event.vala" _g_free0 (new_name); #line 798 "/home/jens/Source/shotwell/src/Event.vala" return result; #line 6334 "Event.c" } static gboolean event_real_set_comment (EventSource* base, const gchar* comment) { Event * self; gboolean result = FALSE; gchar* new_comment = NULL; gchar* _tmp0_; gboolean committed = FALSE; EventTable* _tmp1_; EventID _tmp2_; const gchar* _tmp3_; gboolean _tmp4_; #line 801 "/home/jens/Source/shotwell/src/Event.vala" self = G_TYPE_CHECK_INSTANCE_CAST (base, TYPE_EVENT, Event); #line 802 "/home/jens/Source/shotwell/src/Event.vala" _tmp0_ = media_source_prep_comment (comment); #line 802 "/home/jens/Source/shotwell/src/Event.vala" new_comment = _tmp0_; #line 804 "/home/jens/Source/shotwell/src/Event.vala" _tmp1_ = event_event_table; #line 804 "/home/jens/Source/shotwell/src/Event.vala" _tmp2_ = self->priv->event_id; #line 804 "/home/jens/Source/shotwell/src/Event.vala" _tmp3_ = new_comment; #line 804 "/home/jens/Source/shotwell/src/Event.vala" committed = event_table_set_comment (_tmp1_, &_tmp2_, _tmp3_); #line 805 "/home/jens/Source/shotwell/src/Event.vala" _tmp4_ = committed; #line 805 "/home/jens/Source/shotwell/src/Event.vala" if (_tmp4_) { #line 6369 "Event.c" const gchar* _tmp5_; gchar* _tmp6_; Alteration* _tmp7_; Alteration* _tmp8_; #line 806 "/home/jens/Source/shotwell/src/Event.vala" _tmp5_ = new_comment; #line 806 "/home/jens/Source/shotwell/src/Event.vala" _tmp6_ = g_strdup (_tmp5_); #line 806 "/home/jens/Source/shotwell/src/Event.vala" _g_free0 (self->priv->comment); #line 806 "/home/jens/Source/shotwell/src/Event.vala" self->priv->comment = _tmp6_; #line 807 "/home/jens/Source/shotwell/src/Event.vala" event_update_indexable_keywords (self); #line 808 "/home/jens/Source/shotwell/src/Event.vala" _tmp7_ = alteration_new_from_list ("metadata:comment, indexable:keywords"); #line 808 "/home/jens/Source/shotwell/src/Event.vala" _tmp8_ = _tmp7_; #line 808 "/home/jens/Source/shotwell/src/Event.vala" data_object_notify_altered (G_TYPE_CHECK_INSTANCE_CAST (self, TYPE_DATA_OBJECT, DataObject), _tmp8_); #line 808 "/home/jens/Source/shotwell/src/Event.vala" _alteration_unref0 (_tmp8_); #line 6392 "Event.c" } #line 811 "/home/jens/Source/shotwell/src/Event.vala" result = committed; #line 811 "/home/jens/Source/shotwell/src/Event.vala" _g_free0 (new_comment); #line 811 "/home/jens/Source/shotwell/src/Event.vala" return result; #line 6400 "Event.c" } time_t event_get_creation_time (Event* self) { time_t result = 0; EventTable* _tmp0_; EventID _tmp1_; #line 814 "/home/jens/Source/shotwell/src/Event.vala" g_return_val_if_fail (IS_EVENT (self), 0); #line 815 "/home/jens/Source/shotwell/src/Event.vala" _tmp0_ = event_event_table; #line 815 "/home/jens/Source/shotwell/src/Event.vala" _tmp1_ = self->priv->event_id; #line 815 "/home/jens/Source/shotwell/src/Event.vala" result = event_table_get_time_created (_tmp0_, &_tmp1_); #line 815 "/home/jens/Source/shotwell/src/Event.vala" return result; #line 6420 "Event.c" } static time_t event_real_get_start_time (EventSource* base) { Event * self; time_t result = 0; gint count = 0; ViewCollection* _tmp0_; #line 818 "/home/jens/Source/shotwell/src/Event.vala" self = G_TYPE_CHECK_INSTANCE_CAST (base, TYPE_EVENT, Event); #line 821 "/home/jens/Source/shotwell/src/Event.vala" _tmp0_ = self->priv->view; #line 821 "/home/jens/Source/shotwell/src/Event.vala" count = data_collection_get_count (G_TYPE_CHECK_INSTANCE_CAST (_tmp0_, TYPE_DATA_COLLECTION, DataCollection)); #line 6437 "Event.c" { gint i = 0; #line 822 "/home/jens/Source/shotwell/src/Event.vala" i = 0; #line 6442 "Event.c" { gboolean _tmp1_ = FALSE; #line 822 "/home/jens/Source/shotwell/src/Event.vala" _tmp1_ = TRUE; #line 822 "/home/jens/Source/shotwell/src/Event.vala" while (TRUE) { #line 6449 "Event.c" gint _tmp3_; gint _tmp4_; time_t time = 0; ViewCollection* _tmp5_; gint _tmp6_; DataObject* _tmp7_; DataView* _tmp8_; DataSource* _tmp9_; MediaSource* _tmp10_; time_t _tmp11_; time_t _tmp12_; #line 822 "/home/jens/Source/shotwell/src/Event.vala" if (!_tmp1_) { #line 6463 "Event.c" gint _tmp2_; #line 822 "/home/jens/Source/shotwell/src/Event.vala" _tmp2_ = i; #line 822 "/home/jens/Source/shotwell/src/Event.vala" i = _tmp2_ + 1; #line 6469 "Event.c" } #line 822 "/home/jens/Source/shotwell/src/Event.vala" _tmp1_ = FALSE; #line 822 "/home/jens/Source/shotwell/src/Event.vala" _tmp3_ = i; #line 822 "/home/jens/Source/shotwell/src/Event.vala" _tmp4_ = count; #line 822 "/home/jens/Source/shotwell/src/Event.vala" if (!(_tmp3_ < _tmp4_)) { #line 822 "/home/jens/Source/shotwell/src/Event.vala" break; #line 6481 "Event.c" } #line 823 "/home/jens/Source/shotwell/src/Event.vala" _tmp5_ = self->priv->view; #line 823 "/home/jens/Source/shotwell/src/Event.vala" _tmp6_ = i; #line 823 "/home/jens/Source/shotwell/src/Event.vala" _tmp7_ = data_collection_get_at (G_TYPE_CHECK_INSTANCE_CAST (_tmp5_, TYPE_DATA_COLLECTION, DataCollection), _tmp6_); #line 823 "/home/jens/Source/shotwell/src/Event.vala" _tmp8_ = G_TYPE_CHECK_INSTANCE_CAST (_tmp7_, TYPE_DATA_VIEW, DataView); #line 823 "/home/jens/Source/shotwell/src/Event.vala" _tmp9_ = data_view_get_source (_tmp8_); #line 823 "/home/jens/Source/shotwell/src/Event.vala" _tmp10_ = G_TYPE_CHECK_INSTANCE_CAST (_tmp9_, TYPE_MEDIA_SOURCE, MediaSource); #line 823 "/home/jens/Source/shotwell/src/Event.vala" _tmp11_ = media_source_get_exposure_time (_tmp10_); #line 823 "/home/jens/Source/shotwell/src/Event.vala" _g_object_unref0 (_tmp10_); #line 823 "/home/jens/Source/shotwell/src/Event.vala" _g_object_unref0 (_tmp8_); #line 823 "/home/jens/Source/shotwell/src/Event.vala" time = _tmp11_; #line 824 "/home/jens/Source/shotwell/src/Event.vala" _tmp12_ = time; #line 824 "/home/jens/Source/shotwell/src/Event.vala" if (_tmp12_ != ((time_t) 0)) { #line 825 "/home/jens/Source/shotwell/src/Event.vala" result = time; #line 825 "/home/jens/Source/shotwell/src/Event.vala" return result; #line 6511 "Event.c" } } } } #line 828 "/home/jens/Source/shotwell/src/Event.vala" result = (time_t) 0; #line 828 "/home/jens/Source/shotwell/src/Event.vala" return result; #line 6520 "Event.c" } static time_t event_real_get_end_time (EventSource* base) { Event * self; time_t result = 0; gint count = 0; ViewCollection* _tmp0_; gint _tmp1_; ViewCollection* _tmp2_; gint _tmp3_; DataObject* _tmp4_; DataView* _tmp5_; DataSource* _tmp6_; MediaSource* _tmp7_; time_t _tmp8_; #line 831 "/home/jens/Source/shotwell/src/Event.vala" self = G_TYPE_CHECK_INSTANCE_CAST (base, TYPE_EVENT, Event); #line 832 "/home/jens/Source/shotwell/src/Event.vala" _tmp0_ = self->priv->view; #line 832 "/home/jens/Source/shotwell/src/Event.vala" count = data_collection_get_count (G_TYPE_CHECK_INSTANCE_CAST (_tmp0_, TYPE_DATA_COLLECTION, DataCollection)); #line 836 "/home/jens/Source/shotwell/src/Event.vala" _tmp1_ = count; #line 836 "/home/jens/Source/shotwell/src/Event.vala" if (_tmp1_ == 0) { #line 837 "/home/jens/Source/shotwell/src/Event.vala" result = (time_t) 0; #line 837 "/home/jens/Source/shotwell/src/Event.vala" return result; #line 6553 "Event.c" } #line 839 "/home/jens/Source/shotwell/src/Event.vala" _tmp2_ = self->priv->view; #line 839 "/home/jens/Source/shotwell/src/Event.vala" _tmp3_ = count; #line 839 "/home/jens/Source/shotwell/src/Event.vala" _tmp4_ = data_collection_get_at (G_TYPE_CHECK_INSTANCE_CAST (_tmp2_, TYPE_DATA_COLLECTION, DataCollection), _tmp3_ - 1); #line 839 "/home/jens/Source/shotwell/src/Event.vala" _tmp5_ = G_TYPE_CHECK_INSTANCE_CAST (_tmp4_, TYPE_DATA_VIEW, DataView); #line 839 "/home/jens/Source/shotwell/src/Event.vala" _tmp6_ = data_view_get_source (_tmp5_); #line 839 "/home/jens/Source/shotwell/src/Event.vala" _tmp7_ = G_TYPE_CHECK_INSTANCE_CAST (_tmp6_, TYPE_MEDIA_SOURCE, MediaSource); #line 839 "/home/jens/Source/shotwell/src/Event.vala" _tmp8_ = media_source_get_exposure_time (_tmp7_); #line 839 "/home/jens/Source/shotwell/src/Event.vala" _g_object_unref0 (_tmp7_); #line 839 "/home/jens/Source/shotwell/src/Event.vala" _g_object_unref0 (_tmp5_); #line 839 "/home/jens/Source/shotwell/src/Event.vala" result = _tmp8_; #line 839 "/home/jens/Source/shotwell/src/Event.vala" return result; #line 6577 "Event.c" } static guint64 event_real_get_total_filesize (EventSource* base) { Event * self; guint64 result = 0ULL; guint64 total = 0ULL; #line 842 "/home/jens/Source/shotwell/src/Event.vala" self = G_TYPE_CHECK_INSTANCE_CAST (base, TYPE_EVENT, Event); #line 843 "/home/jens/Source/shotwell/src/Event.vala" total = (guint64) 0; #line 6591 "Event.c" { GeeIterator* _current_source_it = NULL; GeeCollection* _tmp0_; GeeCollection* _tmp1_; GeeIterator* _tmp2_; GeeIterator* _tmp3_; #line 844 "/home/jens/Source/shotwell/src/Event.vala" _tmp0_ = event_source_get_media (G_TYPE_CHECK_INSTANCE_CAST (self, TYPE_EVENT_SOURCE, EventSource)); #line 844 "/home/jens/Source/shotwell/src/Event.vala" _tmp1_ = _tmp0_; #line 844 "/home/jens/Source/shotwell/src/Event.vala" _tmp2_ = gee_iterable_iterator (G_TYPE_CHECK_INSTANCE_CAST (_tmp1_, GEE_TYPE_ITERABLE, GeeIterable)); #line 844 "/home/jens/Source/shotwell/src/Event.vala" _tmp3_ = _tmp2_; #line 844 "/home/jens/Source/shotwell/src/Event.vala" _g_object_unref0 (_tmp1_); #line 844 "/home/jens/Source/shotwell/src/Event.vala" _current_source_it = _tmp3_; #line 844 "/home/jens/Source/shotwell/src/Event.vala" while (TRUE) { #line 6612 "Event.c" GeeIterator* _tmp4_; MediaSource* current_source = NULL; GeeIterator* _tmp5_; gpointer _tmp6_; guint64 _tmp7_; MediaSource* _tmp8_; #line 844 "/home/jens/Source/shotwell/src/Event.vala" _tmp4_ = _current_source_it; #line 844 "/home/jens/Source/shotwell/src/Event.vala" if (!gee_iterator_next (_tmp4_)) { #line 844 "/home/jens/Source/shotwell/src/Event.vala" break; #line 6625 "Event.c" } #line 844 "/home/jens/Source/shotwell/src/Event.vala" _tmp5_ = _current_source_it; #line 844 "/home/jens/Source/shotwell/src/Event.vala" _tmp6_ = gee_iterator_get (_tmp5_); #line 844 "/home/jens/Source/shotwell/src/Event.vala" current_source = (MediaSource*) _tmp6_; #line 845 "/home/jens/Source/shotwell/src/Event.vala" _tmp7_ = total; #line 845 "/home/jens/Source/shotwell/src/Event.vala" _tmp8_ = current_source; #line 845 "/home/jens/Source/shotwell/src/Event.vala" total = _tmp7_ + media_source_get_filesize (_tmp8_); #line 844 "/home/jens/Source/shotwell/src/Event.vala" _g_object_unref0 (current_source); #line 6641 "Event.c" } #line 844 "/home/jens/Source/shotwell/src/Event.vala" _g_object_unref0 (_current_source_it); #line 6645 "Event.c" } #line 848 "/home/jens/Source/shotwell/src/Event.vala" result = total; #line 848 "/home/jens/Source/shotwell/src/Event.vala" return result; #line 6651 "Event.c" } static gint event_real_get_media_count (EventSource* base) { Event * self; gint result = 0; ViewCollection* _tmp0_; #line 851 "/home/jens/Source/shotwell/src/Event.vala" self = G_TYPE_CHECK_INSTANCE_CAST (base, TYPE_EVENT, Event); #line 852 "/home/jens/Source/shotwell/src/Event.vala" _tmp0_ = self->priv->view; #line 852 "/home/jens/Source/shotwell/src/Event.vala" result = data_collection_get_count (G_TYPE_CHECK_INSTANCE_CAST (_tmp0_, TYPE_DATA_COLLECTION, DataCollection)); #line 852 "/home/jens/Source/shotwell/src/Event.vala" return result; #line 6669 "Event.c" } static GeeCollection* event_real_get_media (EventSource* base) { Event * self; GeeCollection* result = NULL; ViewCollection* _tmp0_; GeeCollection* _tmp1_; #line 855 "/home/jens/Source/shotwell/src/Event.vala" self = G_TYPE_CHECK_INSTANCE_CAST (base, TYPE_EVENT, Event); #line 856 "/home/jens/Source/shotwell/src/Event.vala" _tmp0_ = self->priv->view; #line 856 "/home/jens/Source/shotwell/src/Event.vala" _tmp1_ = view_collection_get_sources (_tmp0_); #line 856 "/home/jens/Source/shotwell/src/Event.vala" result = G_TYPE_CHECK_INSTANCE_CAST (_tmp1_, GEE_TYPE_COLLECTION, GeeCollection); #line 856 "/home/jens/Source/shotwell/src/Event.vala" return result; #line 6690 "Event.c" } void event_mirror_photos (Event* self, ViewCollection* view, CreateView mirroring_ctor, void* mirroring_ctor_target) { ViewCollection* _tmp0_; #line 859 "/home/jens/Source/shotwell/src/Event.vala" g_return_if_fail (IS_EVENT (self)); #line 859 "/home/jens/Source/shotwell/src/Event.vala" g_return_if_fail (IS_VIEW_COLLECTION (view)); #line 860 "/home/jens/Source/shotwell/src/Event.vala" _tmp0_ = self->priv->view; #line 860 "/home/jens/Source/shotwell/src/Event.vala" view_collection_mirror (view, _tmp0_, mirroring_ctor, mirroring_ctor_target, NULL, NULL); #line 6709 "Event.c" } static void event_on_primary_thumbnail_altered (Event* self) { #line 863 "/home/jens/Source/shotwell/src/Event.vala" g_return_if_fail (IS_EVENT (self)); #line 864 "/home/jens/Source/shotwell/src/Event.vala" thumbnail_source_notify_thumbnail_altered (G_TYPE_CHECK_INSTANCE_CAST (self, TYPE_THUMBNAIL_SOURCE, ThumbnailSource)); #line 6720 "Event.c" } MediaSource* event_get_primary_source (Event* self) { MediaSource* result = NULL; MediaSource* _tmp0_; MediaSource* _tmp1_; #line 867 "/home/jens/Source/shotwell/src/Event.vala" g_return_val_if_fail (IS_EVENT (self), NULL); #line 868 "/home/jens/Source/shotwell/src/Event.vala" _tmp0_ = self->priv->primary_source; #line 868 "/home/jens/Source/shotwell/src/Event.vala" _tmp1_ = _g_object_ref0 (_tmp0_); #line 868 "/home/jens/Source/shotwell/src/Event.vala" result = _tmp1_; #line 868 "/home/jens/Source/shotwell/src/Event.vala" return result; #line 6740 "Event.c" } gboolean event_set_primary_source (Event* self, MediaSource* source) { gboolean result = FALSE; ViewCollection* _tmp0_; gboolean committed = FALSE; EventTable* _tmp1_; EventID _tmp2_; gchar* _tmp3_; gchar* _tmp4_; gboolean _tmp5_; gboolean _tmp6_; #line 871 "/home/jens/Source/shotwell/src/Event.vala" g_return_val_if_fail (IS_EVENT (self), FALSE); #line 871 "/home/jens/Source/shotwell/src/Event.vala" g_return_val_if_fail (IS_MEDIA_SOURCE (source), FALSE); #line 872 "/home/jens/Source/shotwell/src/Event.vala" _tmp0_ = self->priv->view; #line 872 "/home/jens/Source/shotwell/src/Event.vala" _vala_assert (view_collection_has_view_for_source (_tmp0_, G_TYPE_CHECK_INSTANCE_CAST (source, TYPE_DATA_SOURCE, DataSource)), "view.has_view_for_source(source)"); #line 874 "/home/jens/Source/shotwell/src/Event.vala" _tmp1_ = event_event_table; #line 874 "/home/jens/Source/shotwell/src/Event.vala" _tmp2_ = self->priv->event_id; #line 874 "/home/jens/Source/shotwell/src/Event.vala" _tmp3_ = data_source_get_source_id (G_TYPE_CHECK_INSTANCE_CAST (source, TYPE_DATA_SOURCE, DataSource)); #line 874 "/home/jens/Source/shotwell/src/Event.vala" _tmp4_ = _tmp3_; #line 874 "/home/jens/Source/shotwell/src/Event.vala" _tmp5_ = event_table_set_primary_source_id (_tmp1_, &_tmp2_, _tmp4_); #line 874 "/home/jens/Source/shotwell/src/Event.vala" _g_free0 (_tmp4_); #line 874 "/home/jens/Source/shotwell/src/Event.vala" committed = _tmp5_; #line 875 "/home/jens/Source/shotwell/src/Event.vala" _tmp6_ = committed; #line 875 "/home/jens/Source/shotwell/src/Event.vala" if (_tmp6_) { #line 6783 "Event.c" MediaSource* _tmp7_; MediaSource* _tmp10_; MediaSource* _tmp11_; #line 877 "/home/jens/Source/shotwell/src/Event.vala" _tmp7_ = self->priv->primary_source; #line 877 "/home/jens/Source/shotwell/src/Event.vala" if (_tmp7_ != NULL) { #line 6791 "Event.c" MediaSource* _tmp8_; guint _tmp9_; #line 878 "/home/jens/Source/shotwell/src/Event.vala" _tmp8_ = self->priv->primary_source; #line 878 "/home/jens/Source/shotwell/src/Event.vala" g_signal_parse_name ("thumbnail-altered", TYPE_THUMBNAIL_SOURCE, &_tmp9_, NULL, FALSE); #line 878 "/home/jens/Source/shotwell/src/Event.vala" g_signal_handlers_disconnect_matched (G_TYPE_CHECK_INSTANCE_CAST (_tmp8_, TYPE_THUMBNAIL_SOURCE, ThumbnailSource), G_SIGNAL_MATCH_ID | G_SIGNAL_MATCH_FUNC | G_SIGNAL_MATCH_DATA, _tmp9_, 0, NULL, (GCallback) _event_on_primary_thumbnail_altered_thumbnail_source_thumbnail_altered, self); #line 6800 "Event.c" } #line 880 "/home/jens/Source/shotwell/src/Event.vala" _tmp10_ = _g_object_ref0 (source); #line 880 "/home/jens/Source/shotwell/src/Event.vala" _g_object_unref0 (self->priv->primary_source); #line 880 "/home/jens/Source/shotwell/src/Event.vala" self->priv->primary_source = _tmp10_; #line 881 "/home/jens/Source/shotwell/src/Event.vala" _tmp11_ = self->priv->primary_source; #line 881 "/home/jens/Source/shotwell/src/Event.vala" g_signal_connect_object (G_TYPE_CHECK_INSTANCE_CAST (_tmp11_, TYPE_THUMBNAIL_SOURCE, ThumbnailSource), "thumbnail-altered", (GCallback) _event_on_primary_thumbnail_altered_thumbnail_source_thumbnail_altered, self, 0); #line 883 "/home/jens/Source/shotwell/src/Event.vala" thumbnail_source_notify_thumbnail_altered (G_TYPE_CHECK_INSTANCE_CAST (self, TYPE_THUMBNAIL_SOURCE, ThumbnailSource)); #line 6814 "Event.c" } #line 886 "/home/jens/Source/shotwell/src/Event.vala" result = committed; #line 886 "/home/jens/Source/shotwell/src/Event.vala" return result; #line 6820 "Event.c" } static void event_release_primary_source (Event* self) { MediaSource* _tmp0_; MediaSource* _tmp1_; guint _tmp2_; #line 889 "/home/jens/Source/shotwell/src/Event.vala" g_return_if_fail (IS_EVENT (self)); #line 890 "/home/jens/Source/shotwell/src/Event.vala" _tmp0_ = self->priv->primary_source; #line 890 "/home/jens/Source/shotwell/src/Event.vala" if (_tmp0_ == NULL) { #line 891 "/home/jens/Source/shotwell/src/Event.vala" return; #line 6838 "Event.c" } #line 893 "/home/jens/Source/shotwell/src/Event.vala" _tmp1_ = self->priv->primary_source; #line 893 "/home/jens/Source/shotwell/src/Event.vala" g_signal_parse_name ("thumbnail-altered", TYPE_THUMBNAIL_SOURCE, &_tmp2_, NULL, FALSE); #line 893 "/home/jens/Source/shotwell/src/Event.vala" g_signal_handlers_disconnect_matched (G_TYPE_CHECK_INSTANCE_CAST (_tmp1_, TYPE_THUMBNAIL_SOURCE, ThumbnailSource), G_SIGNAL_MATCH_ID | G_SIGNAL_MATCH_FUNC | G_SIGNAL_MATCH_DATA, _tmp2_, 0, NULL, (GCallback) _event_on_primary_thumbnail_altered_thumbnail_source_thumbnail_altered, self); #line 894 "/home/jens/Source/shotwell/src/Event.vala" _g_object_unref0 (self->priv->primary_source); #line 894 "/home/jens/Source/shotwell/src/Event.vala" self->priv->primary_source = NULL; #line 6850 "Event.c" } static GdkPixbuf* event_real_get_thumbnail (ThumbnailSource* base, gint scale, GError** error) { Event * self; GdkPixbuf* result = NULL; GdkPixbuf* _tmp0_ = NULL; MediaSource* _tmp1_; GError * _inner_error_ = NULL; #line 897 "/home/jens/Source/shotwell/src/Event.vala" self = G_TYPE_CHECK_INSTANCE_CAST (base, TYPE_EVENT, Event); #line 898 "/home/jens/Source/shotwell/src/Event.vala" _tmp1_ = self->priv->primary_source; #line 898 "/home/jens/Source/shotwell/src/Event.vala" if (_tmp1_ != NULL) { #line 6870 "Event.c" MediaSource* _tmp2_; GdkPixbuf* _tmp3_; #line 898 "/home/jens/Source/shotwell/src/Event.vala" _tmp2_ = self->priv->primary_source; #line 898 "/home/jens/Source/shotwell/src/Event.vala" _tmp3_ = thumbnail_source_get_thumbnail (G_TYPE_CHECK_INSTANCE_CAST (_tmp2_, TYPE_THUMBNAIL_SOURCE, ThumbnailSource), scale, &_inner_error_); #line 898 "/home/jens/Source/shotwell/src/Event.vala" _g_object_unref0 (_tmp0_); #line 898 "/home/jens/Source/shotwell/src/Event.vala" _tmp0_ = _tmp3_; #line 898 "/home/jens/Source/shotwell/src/Event.vala" if (G_UNLIKELY (_inner_error_ != NULL)) { #line 898 "/home/jens/Source/shotwell/src/Event.vala" g_propagate_error (error, _inner_error_); #line 898 "/home/jens/Source/shotwell/src/Event.vala" _g_object_unref0 (_tmp0_); #line 898 "/home/jens/Source/shotwell/src/Event.vala" return NULL; #line 6889 "Event.c" } } else { #line 898 "/home/jens/Source/shotwell/src/Event.vala" _g_object_unref0 (_tmp0_); #line 898 "/home/jens/Source/shotwell/src/Event.vala" _tmp0_ = NULL; #line 6896 "Event.c" } #line 898 "/home/jens/Source/shotwell/src/Event.vala" result = _tmp0_; #line 898 "/home/jens/Source/shotwell/src/Event.vala" return result; #line 6902 "Event.c" } GdkPixbuf* event_get_preview_pixbuf (Event* self, Scaling* scaling) { GdkPixbuf* result = NULL; GError * _inner_error_ = NULL; #line 901 "/home/jens/Source/shotwell/src/Event.vala" g_return_val_if_fail (IS_EVENT (self), NULL); #line 901 "/home/jens/Source/shotwell/src/Event.vala" g_return_val_if_fail (scaling != NULL, NULL); #line 6916 "Event.c" { GdkPixbuf* _tmp0_ = NULL; MediaSource* _tmp1_; MediaSource* _tmp2_; Scaling _tmp3_; GdkPixbuf* _tmp4_; GdkPixbuf* _tmp5_; GdkPixbuf* _tmp6_; #line 903 "/home/jens/Source/shotwell/src/Event.vala" _tmp1_ = event_get_primary_source (self); #line 903 "/home/jens/Source/shotwell/src/Event.vala" _tmp2_ = _tmp1_; #line 903 "/home/jens/Source/shotwell/src/Event.vala" _tmp3_ = *scaling; #line 903 "/home/jens/Source/shotwell/src/Event.vala" _tmp4_ = media_source_get_preview_pixbuf (_tmp2_, &_tmp3_, &_inner_error_); #line 903 "/home/jens/Source/shotwell/src/Event.vala" _tmp5_ = _tmp4_; #line 903 "/home/jens/Source/shotwell/src/Event.vala" _g_object_unref0 (_tmp2_); #line 903 "/home/jens/Source/shotwell/src/Event.vala" _tmp0_ = _tmp5_; #line 903 "/home/jens/Source/shotwell/src/Event.vala" if (G_UNLIKELY (_inner_error_ != NULL)) { #line 6941 "Event.c" goto __catch450_g_error; } #line 903 "/home/jens/Source/shotwell/src/Event.vala" _tmp6_ = _tmp0_; #line 903 "/home/jens/Source/shotwell/src/Event.vala" _tmp0_ = NULL; #line 903 "/home/jens/Source/shotwell/src/Event.vala" result = _tmp6_; #line 903 "/home/jens/Source/shotwell/src/Event.vala" _g_object_unref0 (_tmp0_); #line 903 "/home/jens/Source/shotwell/src/Event.vala" return result; #line 6954 "Event.c" } goto __finally450; __catch450_g_error: { GError* err = NULL; #line 902 "/home/jens/Source/shotwell/src/Event.vala" err = _inner_error_; #line 902 "/home/jens/Source/shotwell/src/Event.vala" _inner_error_ = NULL; #line 905 "/home/jens/Source/shotwell/src/Event.vala" result = NULL; #line 905 "/home/jens/Source/shotwell/src/Event.vala" _g_error_free0 (err); #line 905 "/home/jens/Source/shotwell/src/Event.vala" return result; #line 6970 "Event.c" } __finally450: #line 902 "/home/jens/Source/shotwell/src/Event.vala" g_critical ("file %s: line %d: uncaught error: %s (%s, %d)", __FILE__, __LINE__, _inner_error_->message, g_quark_to_string (_inner_error_->domain), _inner_error_->code); #line 902 "/home/jens/Source/shotwell/src/Event.vala" g_clear_error (&_inner_error_); #line 902 "/home/jens/Source/shotwell/src/Event.vala" return NULL; #line 6979 "Event.c" } static void event_real_destroy (DataSource* base) { Event * self; ViewCollection* _tmp0_; PhotoTable* _tmp4_; PhotoTable* _tmp5_; EventID _tmp6_; VideoTable* _tmp7_; VideoTable* _tmp8_; EventID _tmp9_; GError * _inner_error_ = NULL; #line 909 "/home/jens/Source/shotwell/src/Event.vala" self = G_TYPE_CHECK_INSTANCE_CAST (base, TYPE_EVENT, Event); #line 911 "/home/jens/Source/shotwell/src/Event.vala" _tmp0_ = self->priv->view; #line 911 "/home/jens/Source/shotwell/src/Event.vala" view_collection_halt_all_monitoring (_tmp0_); #line 7001 "Event.c" { EventTable* _tmp1_; EventID _tmp2_; #line 915 "/home/jens/Source/shotwell/src/Event.vala" _tmp1_ = event_event_table; #line 915 "/home/jens/Source/shotwell/src/Event.vala" _tmp2_ = self->priv->event_id; #line 915 "/home/jens/Source/shotwell/src/Event.vala" event_table_remove (_tmp1_, &_tmp2_, &_inner_error_); #line 915 "/home/jens/Source/shotwell/src/Event.vala" if (G_UNLIKELY (_inner_error_ != NULL)) { #line 915 "/home/jens/Source/shotwell/src/Event.vala" if (_inner_error_->domain == DATABASE_ERROR) { #line 7015 "Event.c" goto __catch451_database_error; } #line 915 "/home/jens/Source/shotwell/src/Event.vala" g_critical ("file %s: line %d: unexpected error: %s (%s, %d)", __FILE__, __LINE__, _inner_error_->message, g_quark_to_string (_inner_error_->domain), _inner_error_->code); #line 915 "/home/jens/Source/shotwell/src/Event.vala" g_clear_error (&_inner_error_); #line 915 "/home/jens/Source/shotwell/src/Event.vala" return; #line 7024 "Event.c" } } goto __finally451; __catch451_database_error: { GError* err = NULL; GError* _tmp3_; #line 914 "/home/jens/Source/shotwell/src/Event.vala" err = _inner_error_; #line 914 "/home/jens/Source/shotwell/src/Event.vala" _inner_error_ = NULL; #line 917 "/home/jens/Source/shotwell/src/Event.vala" _tmp3_ = err; #line 917 "/home/jens/Source/shotwell/src/Event.vala" app_window_database_error (_tmp3_); #line 914 "/home/jens/Source/shotwell/src/Event.vala" _g_error_free0 (err); #line 7042 "Event.c" } __finally451: #line 914 "/home/jens/Source/shotwell/src/Event.vala" if (G_UNLIKELY (_inner_error_ != NULL)) { #line 914 "/home/jens/Source/shotwell/src/Event.vala" g_critical ("file %s: line %d: uncaught error: %s (%s, %d)", __FILE__, __LINE__, _inner_error_->message, g_quark_to_string (_inner_error_->domain), _inner_error_->code); #line 914 "/home/jens/Source/shotwell/src/Event.vala" g_clear_error (&_inner_error_); #line 914 "/home/jens/Source/shotwell/src/Event.vala" return; #line 7053 "Event.c" } #line 921 "/home/jens/Source/shotwell/src/Event.vala" _tmp4_ = photo_table_get_instance (); #line 921 "/home/jens/Source/shotwell/src/Event.vala" _tmp5_ = _tmp4_; #line 921 "/home/jens/Source/shotwell/src/Event.vala" _tmp6_ = self->priv->event_id; #line 921 "/home/jens/Source/shotwell/src/Event.vala" photo_table_drop_event (_tmp5_, &_tmp6_); #line 921 "/home/jens/Source/shotwell/src/Event.vala" _database_table_unref0 (_tmp5_); #line 922 "/home/jens/Source/shotwell/src/Event.vala" _tmp7_ = video_table_get_instance (); #line 922 "/home/jens/Source/shotwell/src/Event.vala" _tmp8_ = _tmp7_; #line 922 "/home/jens/Source/shotwell/src/Event.vala" _tmp9_ = self->priv->event_id; #line 922 "/home/jens/Source/shotwell/src/Event.vala" video_table_drop_event (_tmp8_, &_tmp9_); #line 922 "/home/jens/Source/shotwell/src/Event.vala" _database_table_unref0 (_tmp8_); #line 924 "/home/jens/Source/shotwell/src/Event.vala" DATA_SOURCE_CLASS (event_parent_class)->destroy (G_TYPE_CHECK_INSTANCE_CAST (G_TYPE_CHECK_INSTANCE_CAST (self, TYPE_EVENT_SOURCE, EventSource), TYPE_DATA_SOURCE, DataSource)); #line 7077 "Event.c" } static void _event_event_snapshot_on_attached_source_destroyed_source_collection_item_destroyed (SourceCollection* _sender, DataSource* source, gpointer self) { #line 126 "/home/jens/Source/shotwell/src/Event.vala" event_event_snapshot_on_attached_source_destroyed ((EventEventSnapshot*) self, source); #line 7088 "Event.c" } static EventEventSnapshot* event_event_snapshot_construct (GType object_type, Event* event) { EventEventSnapshot* self = NULL; EventTable* _tmp0_; EventTable* _tmp1_; EventID _tmp2_ = {0}; EventRow* _tmp3_; MediaSource* _tmp4_; LibraryPhotoSourceCollection* _tmp14_; VideoSourceCollection* _tmp15_; #line 110 "/home/jens/Source/shotwell/src/Event.vala" g_return_val_if_fail (IS_EVENT (event), NULL); #line 110 "/home/jens/Source/shotwell/src/Event.vala" self = (EventEventSnapshot*) source_snapshot_construct (object_type); #line 112 "/home/jens/Source/shotwell/src/Event.vala" _tmp0_ = event_table_get_instance (); #line 112 "/home/jens/Source/shotwell/src/Event.vala" _tmp1_ = _tmp0_; #line 112 "/home/jens/Source/shotwell/src/Event.vala" event_get_event_id (event, &_tmp2_); #line 112 "/home/jens/Source/shotwell/src/Event.vala" _tmp3_ = event_table_get_row (_tmp1_, &_tmp2_); #line 112 "/home/jens/Source/shotwell/src/Event.vala" _event_row_unref0 (self->priv->row); #line 112 "/home/jens/Source/shotwell/src/Event.vala" self->priv->row = _tmp3_; #line 112 "/home/jens/Source/shotwell/src/Event.vala" _database_table_unref0 (_tmp1_); #line 113 "/home/jens/Source/shotwell/src/Event.vala" _tmp4_ = event_get_primary_source (event); #line 113 "/home/jens/Source/shotwell/src/Event.vala" _g_object_unref0 (self->priv->primary_source); #line 113 "/home/jens/Source/shotwell/src/Event.vala" self->priv->primary_source = _tmp4_; #line 7128 "Event.c" { GeeIterator* _source_it = NULL; GeeCollection* _tmp5_; GeeCollection* _tmp6_; GeeIterator* _tmp7_; GeeIterator* _tmp8_; #line 118 "/home/jens/Source/shotwell/src/Event.vala" _tmp5_ = event_source_get_media (G_TYPE_CHECK_INSTANCE_CAST (event, TYPE_EVENT_SOURCE, EventSource)); #line 118 "/home/jens/Source/shotwell/src/Event.vala" _tmp6_ = _tmp5_; #line 118 "/home/jens/Source/shotwell/src/Event.vala" _tmp7_ = gee_iterable_iterator (G_TYPE_CHECK_INSTANCE_CAST (_tmp6_, GEE_TYPE_ITERABLE, GeeIterable)); #line 118 "/home/jens/Source/shotwell/src/Event.vala" _tmp8_ = _tmp7_; #line 118 "/home/jens/Source/shotwell/src/Event.vala" _g_object_unref0 (_tmp6_); #line 118 "/home/jens/Source/shotwell/src/Event.vala" _source_it = _tmp8_; #line 118 "/home/jens/Source/shotwell/src/Event.vala" while (TRUE) { #line 7149 "Event.c" GeeIterator* _tmp9_; MediaSource* source = NULL; GeeIterator* _tmp10_; gpointer _tmp11_; GeeArrayList* _tmp12_; MediaSource* _tmp13_; #line 118 "/home/jens/Source/shotwell/src/Event.vala" _tmp9_ = _source_it; #line 118 "/home/jens/Source/shotwell/src/Event.vala" if (!gee_iterator_next (_tmp9_)) { #line 118 "/home/jens/Source/shotwell/src/Event.vala" break; #line 7162 "Event.c" } #line 118 "/home/jens/Source/shotwell/src/Event.vala" _tmp10_ = _source_it; #line 118 "/home/jens/Source/shotwell/src/Event.vala" _tmp11_ = gee_iterator_get (_tmp10_); #line 118 "/home/jens/Source/shotwell/src/Event.vala" source = (MediaSource*) _tmp11_; #line 119 "/home/jens/Source/shotwell/src/Event.vala" _tmp12_ = self->priv->attached_sources; #line 119 "/home/jens/Source/shotwell/src/Event.vala" _tmp13_ = source; #line 119 "/home/jens/Source/shotwell/src/Event.vala" gee_abstract_collection_add (G_TYPE_CHECK_INSTANCE_CAST (_tmp12_, GEE_TYPE_ABSTRACT_COLLECTION, GeeAbstractCollection), _tmp13_); #line 118 "/home/jens/Source/shotwell/src/Event.vala" _g_object_unref0 (source); #line 7178 "Event.c" } #line 118 "/home/jens/Source/shotwell/src/Event.vala" _g_object_unref0 (_source_it); #line 7182 "Event.c" } #line 121 "/home/jens/Source/shotwell/src/Event.vala" _tmp14_ = library_photo_global; #line 121 "/home/jens/Source/shotwell/src/Event.vala" g_signal_connect (G_TYPE_CHECK_INSTANCE_CAST (_tmp14_, TYPE_SOURCE_COLLECTION, SourceCollection), "item-destroyed", (GCallback) _event_event_snapshot_on_attached_source_destroyed_source_collection_item_destroyed, self); #line 122 "/home/jens/Source/shotwell/src/Event.vala" _tmp15_ = video_global; #line 122 "/home/jens/Source/shotwell/src/Event.vala" g_signal_connect (G_TYPE_CHECK_INSTANCE_CAST (_tmp15_, TYPE_SOURCE_COLLECTION, SourceCollection), "item-destroyed", (GCallback) _event_event_snapshot_on_attached_source_destroyed_source_collection_item_destroyed, self); #line 110 "/home/jens/Source/shotwell/src/Event.vala" return self; #line 7194 "Event.c" } static EventEventSnapshot* event_event_snapshot_new (Event* event) { #line 110 "/home/jens/Source/shotwell/src/Event.vala" return event_event_snapshot_construct (EVENT_TYPE_EVENT_SNAPSHOT, event); #line 7203 "Event.c" } static gpointer _event_row_ref0 (gpointer self) { #line 131 "/home/jens/Source/shotwell/src/Event.vala" return self ? event_row_ref (self) : NULL; #line 7212 "Event.c" } static EventRow* event_event_snapshot_get_row (EventEventSnapshot* self) { EventRow* result = NULL; EventRow* _tmp0_; EventRow* _tmp1_; #line 130 "/home/jens/Source/shotwell/src/Event.vala" g_return_val_if_fail (EVENT_IS_EVENT_SNAPSHOT (self), NULL); #line 131 "/home/jens/Source/shotwell/src/Event.vala" _tmp0_ = self->priv->row; #line 131 "/home/jens/Source/shotwell/src/Event.vala" _tmp1_ = _event_row_ref0 (_tmp0_); #line 131 "/home/jens/Source/shotwell/src/Event.vala" result = _tmp1_; #line 131 "/home/jens/Source/shotwell/src/Event.vala" return result; #line 7232 "Event.c" } static void event_event_snapshot_real_notify_broken (SourceSnapshot* base) { EventEventSnapshot * self; EventRow* _tmp0_; GeeArrayList* _tmp1_; #line 134 "/home/jens/Source/shotwell/src/Event.vala" self = G_TYPE_CHECK_INSTANCE_CAST (base, EVENT_TYPE_EVENT_SNAPSHOT, EventEventSnapshot); #line 135 "/home/jens/Source/shotwell/src/Event.vala" _tmp0_ = event_row_new (); #line 135 "/home/jens/Source/shotwell/src/Event.vala" _event_row_unref0 (self->priv->row); #line 135 "/home/jens/Source/shotwell/src/Event.vala" self->priv->row = _tmp0_; #line 136 "/home/jens/Source/shotwell/src/Event.vala" _g_object_unref0 (self->priv->primary_source); #line 136 "/home/jens/Source/shotwell/src/Event.vala" self->priv->primary_source = NULL; #line 137 "/home/jens/Source/shotwell/src/Event.vala" _tmp1_ = self->priv->attached_sources; #line 137 "/home/jens/Source/shotwell/src/Event.vala" gee_abstract_collection_clear (G_TYPE_CHECK_INSTANCE_CAST (_tmp1_, GEE_TYPE_ABSTRACT_COLLECTION, GeeAbstractCollection)); #line 139 "/home/jens/Source/shotwell/src/Event.vala" SOURCE_SNAPSHOT_CLASS (event_event_snapshot_parent_class)->notify_broken (G_TYPE_CHECK_INSTANCE_CAST (self, TYPE_SOURCE_SNAPSHOT, SourceSnapshot)); #line 7260 "Event.c" } static void event_event_snapshot_on_attached_source_destroyed (EventEventSnapshot* self, DataSource* source) { MediaSource* media_source = NULL; MediaSource* _tmp0_; gboolean _tmp1_ = FALSE; MediaSource* _tmp2_; #line 142 "/home/jens/Source/shotwell/src/Event.vala" g_return_if_fail (EVENT_IS_EVENT_SNAPSHOT (self)); #line 142 "/home/jens/Source/shotwell/src/Event.vala" g_return_if_fail (IS_DATA_SOURCE (source)); #line 143 "/home/jens/Source/shotwell/src/Event.vala" _tmp0_ = _g_object_ref0 (G_TYPE_CHECK_INSTANCE_CAST (source, TYPE_MEDIA_SOURCE, MediaSource)); #line 143 "/home/jens/Source/shotwell/src/Event.vala" media_source = _tmp0_; #line 146 "/home/jens/Source/shotwell/src/Event.vala" _tmp2_ = media_source; #line 146 "/home/jens/Source/shotwell/src/Event.vala" if (_tmp2_ != NULL) { #line 7284 "Event.c" MediaSource* _tmp3_; MediaSource* _tmp4_; #line 146 "/home/jens/Source/shotwell/src/Event.vala" _tmp3_ = self->priv->primary_source; #line 146 "/home/jens/Source/shotwell/src/Event.vala" _tmp4_ = media_source; #line 146 "/home/jens/Source/shotwell/src/Event.vala" _tmp1_ = data_source_equals (G_TYPE_CHECK_INSTANCE_CAST (_tmp3_, TYPE_DATA_SOURCE, DataSource), G_TYPE_CHECK_INSTANCE_CAST (_tmp4_, TYPE_DATA_SOURCE, DataSource)); #line 7293 "Event.c" } else { #line 146 "/home/jens/Source/shotwell/src/Event.vala" _tmp1_ = FALSE; #line 7297 "Event.c" } #line 146 "/home/jens/Source/shotwell/src/Event.vala" if (_tmp1_) { #line 147 "/home/jens/Source/shotwell/src/Event.vala" source_snapshot_notify_broken (G_TYPE_CHECK_INSTANCE_CAST (self, TYPE_SOURCE_SNAPSHOT, SourceSnapshot)); #line 7303 "Event.c" } else { GeeArrayList* _tmp5_; MediaSource* _tmp6_; #line 148 "/home/jens/Source/shotwell/src/Event.vala" _tmp5_ = self->priv->attached_sources; #line 148 "/home/jens/Source/shotwell/src/Event.vala" _tmp6_ = media_source; #line 148 "/home/jens/Source/shotwell/src/Event.vala" if (gee_abstract_collection_contains (G_TYPE_CHECK_INSTANCE_CAST (_tmp5_, GEE_TYPE_ABSTRACT_COLLECTION, GeeAbstractCollection), _tmp6_)) { #line 149 "/home/jens/Source/shotwell/src/Event.vala" source_snapshot_notify_broken (G_TYPE_CHECK_INSTANCE_CAST (self, TYPE_SOURCE_SNAPSHOT, SourceSnapshot)); #line 7315 "Event.c" } } #line 142 "/home/jens/Source/shotwell/src/Event.vala" _g_object_unref0 (media_source); #line 7320 "Event.c" } static void event_event_snapshot_class_init (EventEventSnapshotClass * klass) { #line 105 "/home/jens/Source/shotwell/src/Event.vala" event_event_snapshot_parent_class = g_type_class_peek_parent (klass); #line 105 "/home/jens/Source/shotwell/src/Event.vala" ((SourceSnapshotClass *) klass)->finalize = event_event_snapshot_finalize; #line 105 "/home/jens/Source/shotwell/src/Event.vala" g_type_class_add_private (klass, sizeof (EventEventSnapshotPrivate)); #line 105 "/home/jens/Source/shotwell/src/Event.vala" ((SourceSnapshotClass *) klass)->notify_broken = (void (*) (SourceSnapshot *)) event_event_snapshot_real_notify_broken; #line 7335 "Event.c" } static void event_event_snapshot_instance_init (EventEventSnapshot * self) { GeeArrayList* _tmp0_; #line 105 "/home/jens/Source/shotwell/src/Event.vala" self->priv = EVENT_EVENT_SNAPSHOT_GET_PRIVATE (self); #line 108 "/home/jens/Source/shotwell/src/Event.vala" _tmp0_ = gee_array_list_new (TYPE_MEDIA_SOURCE, (GBoxedCopyFunc) g_object_ref, (GDestroyNotify) g_object_unref, NULL, NULL, NULL); #line 108 "/home/jens/Source/shotwell/src/Event.vala" self->priv->attached_sources = _tmp0_; #line 7349 "Event.c" } static void event_event_snapshot_finalize (SourceSnapshot * obj) { EventEventSnapshot * self; LibraryPhotoSourceCollection* _tmp0_; guint _tmp1_; VideoSourceCollection* _tmp2_; guint _tmp3_; #line 105 "/home/jens/Source/shotwell/src/Event.vala" self = G_TYPE_CHECK_INSTANCE_CAST (obj, EVENT_TYPE_EVENT_SNAPSHOT, EventEventSnapshot); #line 126 "/home/jens/Source/shotwell/src/Event.vala" _tmp0_ = library_photo_global; #line 126 "/home/jens/Source/shotwell/src/Event.vala" g_signal_parse_name ("item-destroyed", TYPE_SOURCE_COLLECTION, &_tmp1_, NULL, FALSE); #line 126 "/home/jens/Source/shotwell/src/Event.vala" g_signal_handlers_disconnect_matched (G_TYPE_CHECK_INSTANCE_CAST (_tmp0_, TYPE_SOURCE_COLLECTION, SourceCollection), G_SIGNAL_MATCH_ID | G_SIGNAL_MATCH_FUNC | G_SIGNAL_MATCH_DATA, _tmp1_, 0, NULL, (GCallback) _event_event_snapshot_on_attached_source_destroyed_source_collection_item_destroyed, self); #line 127 "/home/jens/Source/shotwell/src/Event.vala" _tmp2_ = video_global; #line 127 "/home/jens/Source/shotwell/src/Event.vala" g_signal_parse_name ("item-destroyed", TYPE_SOURCE_COLLECTION, &_tmp3_, NULL, FALSE); #line 127 "/home/jens/Source/shotwell/src/Event.vala" g_signal_handlers_disconnect_matched (G_TYPE_CHECK_INSTANCE_CAST (_tmp2_, TYPE_SOURCE_COLLECTION, SourceCollection), G_SIGNAL_MATCH_ID | G_SIGNAL_MATCH_FUNC | G_SIGNAL_MATCH_DATA, _tmp3_, 0, NULL, (GCallback) _event_event_snapshot_on_attached_source_destroyed_source_collection_item_destroyed, self); #line 106 "/home/jens/Source/shotwell/src/Event.vala" _event_row_unref0 (self->priv->row); #line 107 "/home/jens/Source/shotwell/src/Event.vala" _g_object_unref0 (self->priv->primary_source); #line 108 "/home/jens/Source/shotwell/src/Event.vala" _g_object_unref0 (self->priv->attached_sources); #line 105 "/home/jens/Source/shotwell/src/Event.vala" SOURCE_SNAPSHOT_CLASS (event_event_snapshot_parent_class)->finalize (obj); #line 7383 "Event.c" } static GType event_event_snapshot_get_type (void) { static volatile gsize event_event_snapshot_type_id__volatile = 0; if (g_once_init_enter (&event_event_snapshot_type_id__volatile)) { static const GTypeInfo g_define_type_info = { sizeof (EventEventSnapshotClass), (GBaseInitFunc) NULL, (GBaseFinalizeFunc) NULL, (GClassInitFunc) event_event_snapshot_class_init, (GClassFinalizeFunc) NULL, NULL, sizeof (EventEventSnapshot), 0, (GInstanceInitFunc) event_event_snapshot_instance_init, NULL }; GType event_event_snapshot_type_id; event_event_snapshot_type_id = g_type_register_static (TYPE_SOURCE_SNAPSHOT, "EventEventSnapshot", &g_define_type_info, 0); g_once_init_leave (&event_event_snapshot_type_id__volatile, event_event_snapshot_type_id); } return event_event_snapshot_type_id__volatile; } static EventEventProxy* event_event_proxy_construct (GType object_type, Event* event) { EventEventProxy* self = NULL; #line 154 "/home/jens/Source/shotwell/src/Event.vala" g_return_val_if_fail (IS_EVENT (event), NULL); #line 155 "/home/jens/Source/shotwell/src/Event.vala" self = (EventEventProxy*) source_proxy_construct (object_type, G_TYPE_CHECK_INSTANCE_CAST (event, TYPE_DATA_SOURCE, DataSource)); #line 154 "/home/jens/Source/shotwell/src/Event.vala" return self; #line 7412 "Event.c" } static EventEventProxy* event_event_proxy_new (Event* event) { #line 154 "/home/jens/Source/shotwell/src/Event.vala" return event_event_proxy_construct (EVENT_TYPE_EVENT_PROXY, event); #line 7421 "Event.c" } static gpointer _source_snapshot_ref0 (gpointer self) { #line 159 "/home/jens/Source/shotwell/src/Event.vala" return self ? source_snapshot_ref (self) : NULL; #line 7430 "Event.c" } static DataSource* event_event_proxy_real_reconstitute (SourceProxy* base, gint64 object_id, SourceSnapshot* snapshot) { EventEventProxy * self; DataSource* result = NULL; EventEventSnapshot* event_snapshot = NULL; EventEventSnapshot* _tmp0_; EventRow* _tmp1_; EventRow* _tmp2_; Event* _tmp3_; DataSource* _tmp4_; #line 158 "/home/jens/Source/shotwell/src/Event.vala" self = G_TYPE_CHECK_INSTANCE_CAST (base, EVENT_TYPE_EVENT_PROXY, EventEventProxy); #line 158 "/home/jens/Source/shotwell/src/Event.vala" g_return_val_if_fail (IS_SOURCE_SNAPSHOT (snapshot), NULL); #line 159 "/home/jens/Source/shotwell/src/Event.vala" _tmp0_ = _source_snapshot_ref0 (G_TYPE_CHECK_INSTANCE_TYPE (snapshot, EVENT_TYPE_EVENT_SNAPSHOT) ? ((EventEventSnapshot*) snapshot) : NULL); #line 159 "/home/jens/Source/shotwell/src/Event.vala" event_snapshot = _tmp0_; #line 160 "/home/jens/Source/shotwell/src/Event.vala" _vala_assert (event_snapshot != NULL, "event_snapshot != null"); #line 162 "/home/jens/Source/shotwell/src/Event.vala" _tmp1_ = event_event_snapshot_get_row (event_snapshot); #line 162 "/home/jens/Source/shotwell/src/Event.vala" _tmp2_ = _tmp1_; #line 162 "/home/jens/Source/shotwell/src/Event.vala" _tmp3_ = event_reconstitute (object_id, _tmp2_); #line 162 "/home/jens/Source/shotwell/src/Event.vala" _tmp4_ = G_TYPE_CHECK_INSTANCE_CAST (_tmp3_, TYPE_DATA_SOURCE, DataSource); #line 162 "/home/jens/Source/shotwell/src/Event.vala" _event_row_unref0 (_tmp2_); #line 162 "/home/jens/Source/shotwell/src/Event.vala" result = _tmp4_; #line 162 "/home/jens/Source/shotwell/src/Event.vala" _source_snapshot_unref0 (event_snapshot); #line 162 "/home/jens/Source/shotwell/src/Event.vala" return result; #line 7473 "Event.c" } static void event_event_proxy_class_init (EventEventProxyClass * klass) { #line 153 "/home/jens/Source/shotwell/src/Event.vala" event_event_proxy_parent_class = g_type_class_peek_parent (klass); #line 153 "/home/jens/Source/shotwell/src/Event.vala" ((SourceProxyClass *) klass)->reconstitute = (DataSource* (*) (SourceProxy *, gint64, SourceSnapshot*)) event_event_proxy_real_reconstitute; #line 7484 "Event.c" } static void event_event_proxy_instance_init (EventEventProxy * self) { } static GType event_event_proxy_get_type (void) { static volatile gsize event_event_proxy_type_id__volatile = 0; if (g_once_init_enter (&event_event_proxy_type_id__volatile)) { static const GTypeInfo g_define_type_info = { sizeof (EventEventProxyClass), (GBaseInitFunc) NULL, (GBaseFinalizeFunc) NULL, (GClassInitFunc) event_event_proxy_class_init, (GClassFinalizeFunc) NULL, NULL, sizeof (EventEventProxy), 0, (GInstanceInitFunc) event_event_proxy_instance_init, NULL }; GType event_event_proxy_type_id; event_event_proxy_type_id = g_type_register_static (TYPE_SOURCE_PROXY, "EventEventProxy", &g_define_type_info, 0); g_once_init_leave (&event_event_proxy_type_id__volatile, event_event_proxy_type_id); } return event_event_proxy_type_id__volatile; } static void event_class_init (EventClass * klass) { #line 94 "/home/jens/Source/shotwell/src/Event.vala" event_parent_class = g_type_class_peek_parent (klass); #line 94 "/home/jens/Source/shotwell/src/Event.vala" g_type_class_add_private (klass, sizeof (EventPrivate)); #line 94 "/home/jens/Source/shotwell/src/Event.vala" ((DataSourceClass *) klass)->get_typename = (gchar* (*) (DataSource *)) event_real_get_typename; #line 94 "/home/jens/Source/shotwell/src/Event.vala" ((DataSourceClass *) klass)->get_instance_id = (gint64 (*) (DataSource *)) event_real_get_instance_id; #line 94 "/home/jens/Source/shotwell/src/Event.vala" ((ThumbnailSourceClass *) klass)->get_representative_id = (gchar* (*) (ThumbnailSource *)) event_real_get_representative_id; #line 94 "/home/jens/Source/shotwell/src/Event.vala" ((ThumbnailSourceClass *) klass)->get_preferred_thumbnail_format = (PhotoFileFormat (*) (ThumbnailSource *)) event_real_get_preferred_thumbnail_format; #line 94 "/home/jens/Source/shotwell/src/Event.vala" ((ThumbnailSourceClass *) klass)->create_thumbnail = (GdkPixbuf* (*) (ThumbnailSource *, gint, GError**)) event_real_create_thumbnail; #line 94 "/home/jens/Source/shotwell/src/Event.vala" ((DataSourceClass *) klass)->notify_relinking = (void (*) (DataSource *, SourceCollection*)) event_real_notify_relinking; #line 94 "/home/jens/Source/shotwell/src/Event.vala" ((DataSourceClass *) klass)->save_snapshot = (SourceSnapshot* (*) (DataSource *)) event_real_save_snapshot; #line 94 "/home/jens/Source/shotwell/src/Event.vala" ((DataSourceClass *) klass)->equals = (gboolean (*) (DataSource *, DataSource*)) event_real_equals; #line 94 "/home/jens/Source/shotwell/src/Event.vala" ((DataObjectClass *) klass)->to_string = (gchar* (*) (DataObject *)) event_real_to_string; #line 94 "/home/jens/Source/shotwell/src/Event.vala" ((DataObjectClass *) klass)->get_name = (gchar* (*) (DataObject *)) event_real_get_name; #line 94 "/home/jens/Source/shotwell/src/Event.vala" ((EventSourceClass *) klass)->get_comment = (gchar* (*) (EventSource *)) event_real_get_comment; #line 94 "/home/jens/Source/shotwell/src/Event.vala" ((EventSourceClass *) klass)->set_comment = (gboolean (*) (EventSource *, const gchar*)) event_real_set_comment; #line 94 "/home/jens/Source/shotwell/src/Event.vala" ((EventSourceClass *) klass)->get_start_time = (time_t (*) (EventSource *)) event_real_get_start_time; #line 94 "/home/jens/Source/shotwell/src/Event.vala" ((EventSourceClass *) klass)->get_end_time = (time_t (*) (EventSource *)) event_real_get_end_time; #line 94 "/home/jens/Source/shotwell/src/Event.vala" ((EventSourceClass *) klass)->get_total_filesize = (guint64 (*) (EventSource *)) event_real_get_total_filesize; #line 94 "/home/jens/Source/shotwell/src/Event.vala" ((EventSourceClass *) klass)->get_media_count = (gint (*) (EventSource *)) event_real_get_media_count; #line 94 "/home/jens/Source/shotwell/src/Event.vala" ((EventSourceClass *) klass)->get_media = (GeeCollection* (*) (EventSource *)) event_real_get_media; #line 94 "/home/jens/Source/shotwell/src/Event.vala" ((ThumbnailSourceClass *) klass)->get_thumbnail = (GdkPixbuf* (*) (ThumbnailSource *, gint, GError**)) event_real_get_thumbnail; #line 94 "/home/jens/Source/shotwell/src/Event.vala" ((DataSourceClass *) klass)->destroy = (void (*) (DataSource *)) event_real_destroy; #line 94 "/home/jens/Source/shotwell/src/Event.vala" G_OBJECT_CLASS (klass)->finalize = event_finalize; #line 7555 "Event.c" } static void event_container_source_interface_init (ContainerSourceIface * iface) { #line 94 "/home/jens/Source/shotwell/src/Event.vala" event_container_source_parent_iface = g_type_interface_peek_parent (iface); #line 94 "/home/jens/Source/shotwell/src/Event.vala" iface->has_links = (gboolean (*) (ContainerSource *)) event_real_has_links; #line 94 "/home/jens/Source/shotwell/src/Event.vala" iface->get_backlink = (SourceBacklink* (*) (ContainerSource *)) event_real_get_backlink; #line 94 "/home/jens/Source/shotwell/src/Event.vala" iface->break_link = (void (*) (ContainerSource *, DataSource*)) event_real_break_link; #line 94 "/home/jens/Source/shotwell/src/Event.vala" iface->break_link_many = (void (*) (ContainerSource *, GeeCollection*)) event_real_break_link_many; #line 94 "/home/jens/Source/shotwell/src/Event.vala" iface->establish_link = (void (*) (ContainerSource *, DataSource*)) event_real_establish_link; #line 94 "/home/jens/Source/shotwell/src/Event.vala" iface->establish_link_many = (void (*) (ContainerSource *, GeeCollection*)) event_real_establish_link_many; #line 7576 "Event.c" } static void event_proxyable_interface_init (ProxyableIface * iface) { #line 94 "/home/jens/Source/shotwell/src/Event.vala" event_proxyable_parent_iface = g_type_interface_peek_parent (iface); #line 94 "/home/jens/Source/shotwell/src/Event.vala" iface->get_proxy = (SourceProxy* (*) (Proxyable *)) event_real_get_proxy; #line 7587 "Event.c" } static void event_indexable_interface_init (IndexableIface * iface) { #line 94 "/home/jens/Source/shotwell/src/Event.vala" event_indexable_parent_iface = g_type_interface_peek_parent (iface); #line 94 "/home/jens/Source/shotwell/src/Event.vala" iface->get_indexable_keywords = (const gchar* (*) (Indexable *)) event_real_get_indexable_keywords; #line 7598 "Event.c" } static void event_instance_init (Event * self) { #line 94 "/home/jens/Source/shotwell/src/Event.vala" self->priv = EVENT_GET_PRIVATE (self); #line 175 "/home/jens/Source/shotwell/src/Event.vala" self->priv->unlinking = FALSE; #line 176 "/home/jens/Source/shotwell/src/Event.vala" self->priv->relinking = FALSE; #line 177 "/home/jens/Source/shotwell/src/Event.vala" self->priv->indexable_keywords = NULL; #line 178 "/home/jens/Source/shotwell/src/Event.vala" self->priv->comment = NULL; #line 7615 "Event.c" } static void event_finalize (GObject * obj) { Event * self; MediaSource* _tmp0_; ViewCollection* _tmp3_; guint _tmp4_; ViewCollection* _tmp5_; guint _tmp6_; ViewCollection* _tmp7_; guint _tmp8_; LibraryPhotoSourceCollection* _tmp9_; guint _tmp10_; VideoSourceCollection* _tmp11_; guint _tmp12_; #line 94 "/home/jens/Source/shotwell/src/Event.vala" self = G_TYPE_CHECK_INSTANCE_CAST (obj, TYPE_EVENT, Event); #line 237 "/home/jens/Source/shotwell/src/Event.vala" _tmp0_ = self->priv->primary_source; #line 237 "/home/jens/Source/shotwell/src/Event.vala" if (_tmp0_ != NULL) { #line 7640 "Event.c" MediaSource* _tmp1_; guint _tmp2_; #line 238 "/home/jens/Source/shotwell/src/Event.vala" _tmp1_ = self->priv->primary_source; #line 238 "/home/jens/Source/shotwell/src/Event.vala" g_signal_parse_name ("thumbnail-altered", TYPE_THUMBNAIL_SOURCE, &_tmp2_, NULL, FALSE); #line 238 "/home/jens/Source/shotwell/src/Event.vala" g_signal_handlers_disconnect_matched (G_TYPE_CHECK_INSTANCE_CAST (_tmp1_, TYPE_THUMBNAIL_SOURCE, ThumbnailSource), G_SIGNAL_MATCH_ID | G_SIGNAL_MATCH_FUNC | G_SIGNAL_MATCH_DATA, _tmp2_, 0, NULL, (GCallback) _event_on_primary_thumbnail_altered_thumbnail_source_thumbnail_altered, self); #line 7649 "Event.c" } #line 240 "/home/jens/Source/shotwell/src/Event.vala" _tmp3_ = self->priv->view; #line 240 "/home/jens/Source/shotwell/src/Event.vala" g_signal_parse_name ("items-altered", TYPE_DATA_COLLECTION, &_tmp4_, NULL, FALSE); #line 240 "/home/jens/Source/shotwell/src/Event.vala" g_signal_handlers_disconnect_matched (G_TYPE_CHECK_INSTANCE_CAST (_tmp3_, TYPE_DATA_COLLECTION, DataCollection), G_SIGNAL_MATCH_ID | G_SIGNAL_MATCH_FUNC | G_SIGNAL_MATCH_DATA, _tmp4_, 0, NULL, (GCallback) _event_on_media_altered_data_collection_items_altered, self); #line 241 "/home/jens/Source/shotwell/src/Event.vala" _tmp5_ = self->priv->view; #line 241 "/home/jens/Source/shotwell/src/Event.vala" g_signal_parse_name ("items-removed", TYPE_DATA_COLLECTION, &_tmp6_, NULL, FALSE); #line 241 "/home/jens/Source/shotwell/src/Event.vala" g_signal_handlers_disconnect_matched (G_TYPE_CHECK_INSTANCE_CAST (_tmp5_, TYPE_DATA_COLLECTION, DataCollection), G_SIGNAL_MATCH_ID | G_SIGNAL_MATCH_FUNC | G_SIGNAL_MATCH_DATA, _tmp6_, 0, NULL, (GCallback) _event_on_media_removed_data_collection_items_removed, self); #line 242 "/home/jens/Source/shotwell/src/Event.vala" _tmp7_ = self->priv->view; #line 242 "/home/jens/Source/shotwell/src/Event.vala" g_signal_parse_name ("items-added", TYPE_DATA_COLLECTION, &_tmp8_, NULL, FALSE); #line 242 "/home/jens/Source/shotwell/src/Event.vala" g_signal_handlers_disconnect_matched (G_TYPE_CHECK_INSTANCE_CAST (_tmp7_, TYPE_DATA_COLLECTION, DataCollection), G_SIGNAL_MATCH_ID | G_SIGNAL_MATCH_FUNC | G_SIGNAL_MATCH_DATA, _tmp8_, 0, NULL, (GCallback) _event_on_media_added_data_collection_items_added, self); #line 244 "/home/jens/Source/shotwell/src/Event.vala" _tmp9_ = library_photo_global; #line 244 "/home/jens/Source/shotwell/src/Event.vala" g_signal_parse_name ("item-destroyed", TYPE_SOURCE_COLLECTION, &_tmp10_, NULL, FALSE); #line 244 "/home/jens/Source/shotwell/src/Event.vala" g_signal_handlers_disconnect_matched (G_TYPE_CHECK_INSTANCE_CAST (_tmp9_, TYPE_SOURCE_COLLECTION, SourceCollection), G_SIGNAL_MATCH_ID | G_SIGNAL_MATCH_FUNC | G_SIGNAL_MATCH_DATA, _tmp10_, 0, NULL, (GCallback) _event_on_media_destroyed_source_collection_item_destroyed, self); #line 245 "/home/jens/Source/shotwell/src/Event.vala" _tmp11_ = video_global; #line 245 "/home/jens/Source/shotwell/src/Event.vala" g_signal_parse_name ("item-destroyed", TYPE_SOURCE_COLLECTION, &_tmp12_, NULL, FALSE); #line 245 "/home/jens/Source/shotwell/src/Event.vala" g_signal_handlers_disconnect_matched (G_TYPE_CHECK_INSTANCE_CAST (_tmp11_, TYPE_SOURCE_COLLECTION, SourceCollection), G_SIGNAL_MATCH_ID | G_SIGNAL_MATCH_FUNC | G_SIGNAL_MATCH_DATA, _tmp12_, 0, NULL, (GCallback) _event_on_media_destroyed_source_collection_item_destroyed, self); #line 172 "/home/jens/Source/shotwell/src/Event.vala" _g_free0 (self->priv->raw_name); #line 173 "/home/jens/Source/shotwell/src/Event.vala" _g_object_unref0 (self->priv->primary_source); #line 174 "/home/jens/Source/shotwell/src/Event.vala" _data_collection_unref0 (self->priv->view); #line 177 "/home/jens/Source/shotwell/src/Event.vala" _g_free0 (self->priv->indexable_keywords); #line 178 "/home/jens/Source/shotwell/src/Event.vala" _g_free0 (self->priv->comment); #line 94 "/home/jens/Source/shotwell/src/Event.vala" G_OBJECT_CLASS (event_parent_class)->finalize (obj); #line 7693 "Event.c" } GType event_get_type (void) { static volatile gsize event_type_id__volatile = 0; if (g_once_init_enter (&event_type_id__volatile)) { static const GTypeInfo g_define_type_info = { sizeof (EventClass), (GBaseInitFunc) NULL, (GBaseFinalizeFunc) NULL, (GClassInitFunc) event_class_init, (GClassFinalizeFunc) NULL, NULL, sizeof (Event), 0, (GInstanceInitFunc) event_instance_init, NULL }; static const GInterfaceInfo container_source_info = { (GInterfaceInitFunc) event_container_source_interface_init, (GInterfaceFinalizeFunc) NULL, NULL}; static const GInterfaceInfo proxyable_info = { (GInterfaceInitFunc) event_proxyable_interface_init, (GInterfaceFinalizeFunc) NULL, NULL}; static const GInterfaceInfo indexable_info = { (GInterfaceInitFunc) event_indexable_interface_init, (GInterfaceFinalizeFunc) NULL, NULL}; GType event_type_id; event_type_id = g_type_register_static (TYPE_EVENT_SOURCE, "Event", &g_define_type_info, 0); g_type_add_interface_static (event_type_id, TYPE_CONTAINER_SOURCE, &container_source_info); g_type_add_interface_static (event_type_id, TYPE_PROXYABLE, &proxyable_info); g_type_add_interface_static (event_type_id, TYPE_INDEXABLE, &indexable_info); g_once_init_leave (&event_type_id__volatile, event_type_id); } return event_type_id__volatile; } static void _vala_array_destroy (gpointer array, gint array_length, GDestroyNotify destroy_func) { if ((array != NULL) && (destroy_func != NULL)) { int i; for (i = 0; i < array_length; i = i + 1) { if (((gpointer*) array)[i] != NULL) { destroy_func (((gpointer*) array)[i]); } } } } static void _vala_array_free (gpointer array, gint array_length, GDestroyNotify destroy_func) { _vala_array_destroy (array, array_length, destroy_func); g_free (array); }