1 /* -*- Mode: C; tab-width: 8; indent-tabs-mode: t; c-basic-offset: 8 -*- */ 2 /* 3 * Copyright (C) 1999-2008 Novell, Inc. (www.novell.com) 4 * 5 * This library is free software: you can redistribute it and/or modify it 6 * under the terms of the GNU Lesser General Public License as published by 7 * the Free Software Foundation. 8 * 9 * This library 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 License 12 * for more details. 13 * 14 * You should have received a copy of the GNU Lesser General Public License 15 * along with this library. If not, see <http://www.gnu.org/licenses/>. 16 * 17 * Authors: Chris Lahey <clahey@ximian.com> 18 */ 19 20 #if !defined (__LIBEDATASERVER_H_INSIDE__) && !defined (LIBEDATASERVER_COMPILATION) 21 #error "Only <libedataserver/libedataserver.h> should be included directly." 22 #endif 23 24 #ifndef EDS_DISABLE_DEPRECATED 25 26 /* Do not generate bindings. */ 27 #ifndef __GI_SCANNER__ 28 29 #ifndef E_LIST_ITERATOR_H 30 #define E_LIST_ITERATOR_H 31 32 #include <stdio.h> 33 #include <time.h> 34 35 #include <libedataserver/e-list.h> 36 #include <libedataserver/e-iterator.h> 37 38 /* Standard GObject macros */ 39 #define E_TYPE_LIST_ITERATOR \ 40 (e_list_iterator_get_type ()) 41 #define E_LIST_ITERATOR(obj) \ 42 (G_TYPE_CHECK_INSTANCE_CAST \ 43 ((obj), E_TYPE_LIST_ITERATOR, EListIterator)) 44 #define E_LIST_ITERATOR_CLASS(cls) \ 45 (G_TYPE_CHECK_CLASS_CAST \ 46 ((cls), E_TYPE_LIST_ITERATOR, EListIteratorClass)) 47 #define E_IS_LIST_ITERATOR(obj) \ 48 (G_TYPE_CHECK_INSTANCE_TYPE \ 49 ((obj), E_TYPE_LIST_ITERATOR)) 50 #define E_IS_LIST_ITERATOR_CLASS(cls) \ 51 (G_TYPE_CHECK_CLASS_TYPE \ 52 ((cls), E_TYPE_LIST_ITERATOR)) 53 #define E_LIST_ITERATOR_GET_CLASS(obj) \ 54 (G_TYPE_INSTANCE_GET_CLASS \ 55 ((obj), E_TYPE_LIST_ITERATOR, EListIteratorClass)) 56 57 G_BEGIN_DECLS 58 59 typedef struct _EListIterator EListIterator; 60 typedef struct _EListIteratorClass EListIteratorClass; 61 62 struct _EListIterator { 63 EIterator parent; 64 65 EList *list; 66 GList *iterator; 67 }; 68 69 struct _EListIteratorClass { 70 EIteratorClass parent_class; 71 }; 72 73 GType e_list_iterator_get_type (void) G_GNUC_CONST; 74 EIterator * e_list_iterator_new (EList *list); 75 76 G_END_DECLS 77 78 #endif /* E_LIST_ITERATOR_H */ 79 80 #endif /* __GI_SCANNER__ */ 81 82 #endif /* EDS_DISABLE_DEPRECATED */ 83 84