1 /* 2 * Photos - access, organize and share your photos on GNOME 3 * Copyright © 2012 – 2019 Red Hat, Inc. 4 * 5 * This program is free software: you can redistribute it and/or modify 6 * it under the terms of the GNU General Public License as published by 7 * the Free Software Foundation, either version 3 of the License, or 8 * (at your option) any later version. 9 * 10 * This program is distributed in the hope that it will be useful, 11 * but WITHOUT ANY WARRANTY; without even the implied warranty of 12 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 13 * GNU General Public License for more details. 14 * 15 * You should have received a copy of the GNU General Public License 16 * along with this program. If not, see <http://www.gnu.org/licenses/>. 17 */ 18 19 /* Based on code from: 20 * + Documents 21 */ 22 23 #ifndef PHOTOS_TRACKER_CONTROLLER_H 24 #define PHOTOS_TRACKER_CONTROLLER_H 25 26 #include <glib-object.h> 27 28 #include "photos-offset-controller.h" 29 #include "photos-query.h" 30 31 G_BEGIN_DECLS 32 33 #define PHOTOS_TYPE_TRACKER_CONTROLLER (photos_tracker_controller_get_type ()) 34 G_DECLARE_DERIVABLE_TYPE (PhotosTrackerController, photos_tracker_controller, PHOTOS, TRACKER_CONTROLLER, GObject); 35 36 typedef struct _PhotosTrackerControllerPrivate PhotosTrackerControllerPrivate; 37 38 struct _PhotosTrackerControllerClass 39 { 40 GObjectClass parent_class; 41 42 GType base_item_type; 43 44 /* virtual methods */ 45 PhotosOffsetController *(*get_offset_controller) (PhotosTrackerController *self); 46 PhotosQuery *(*get_query) (PhotosTrackerController *self); 47 48 /* signals */ 49 void (*query_error) (PhotosTrackerController *self, const gchar *primary, const gchar *secondary); 50 void (*query_status_changed) (PhotosTrackerController *self, gboolean querying); 51 }; 52 53 void photos_tracker_controller_set_frozen (PhotosTrackerController *self, 54 gboolean frozen); 55 56 gboolean photos_tracker_controller_get_query_status (PhotosTrackerController *self); 57 58 void photos_tracker_controller_refresh_for_object (PhotosTrackerController *self); 59 60 void photos_tracker_controller_start (PhotosTrackerController *self); 61 62 G_END_DECLS 63 64 #endif /* PHOTOS_TRACKER_CONTROLLER_H */ 65