1 /* 2 * Copyright (c) 2016 Red Hat, Inc. 3 * 4 * This program is free software; you can redistribute it and/or modify 5 * it under the terms of the GNU Lesser General Public License as published by 6 * the Free Software Foundation; either version 2 of the License, or (at your 7 * option) any later version. 8 * 9 * This program is distributed in the hope that it will be useful, but 10 * WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY 11 * or FITNESS FOR A PARTICULAR PURPOSE. See the GNU Lesser General Public 12 * License for more details. 13 * 14 * You should have received a copy of the GNU Lesser General Public License 15 * along with this program; if not, write to the Free Software Foundation, 16 * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA 17 * 18 * Author: Debarshi Ray <debarshir@gnome.org> 19 * 20 */ 21 22 #ifndef __GD_MAIN_BOX_ITEM_H__ 23 #define __GD_MAIN_BOX_ITEM_H__ 24 25 #include <cairo.h> 26 #include <glib-object.h> 27 28 G_BEGIN_DECLS 29 30 #define GD_TYPE_MAIN_BOX_ITEM gd_main_box_item_get_type() 31 G_DECLARE_INTERFACE (GdMainBoxItem, gd_main_box_item, GD, MAIN_BOX_ITEM, GObject) 32 33 struct _GdMainBoxItemInterface 34 { 35 GTypeInterface base_iface; 36 37 /* vtable */ 38 const gchar * (* get_id) (GdMainBoxItem *self); 39 const gchar * (* get_uri) (GdMainBoxItem *self); 40 const gchar * (* get_primary_text) (GdMainBoxItem *self); 41 const gchar * (* get_secondary_text) (GdMainBoxItem *self); 42 cairo_surface_t * (* get_icon) (GdMainBoxItem *self); 43 }; 44 45 const gchar * gd_main_box_item_get_id (GdMainBoxItem *self); 46 const gchar * gd_main_box_item_get_uri (GdMainBoxItem *self); 47 const gchar * gd_main_box_item_get_primary_text (GdMainBoxItem *self); 48 const gchar * gd_main_box_item_get_secondary_text (GdMainBoxItem *self); 49 cairo_surface_t * gd_main_box_item_get_icon (GdMainBoxItem *self); 50 gint64 gd_main_box_item_get_mtime (GdMainBoxItem *self); 51 gboolean gd_main_box_item_get_pulse (GdMainBoxItem *self); 52 53 G_END_DECLS 54 55 #endif /* __GD_MAIN_BOX_ITEM_H__ */ 56