1 /* 2 * This program is free software; you can redistribute it and/or modify it 3 * under the terms of the GNU Lesser General Public License as published by 4 * the Free Software Foundation. 5 * 6 * This program is distributed in the hope that it will be useful, but 7 * WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY 8 * or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License 9 * for more details. 10 * 11 * You should have received a copy of the GNU Lesser General Public License 12 * along with this program; if not, see <http://www.gnu.org/licenses/>. 13 * 14 * 15 * Authors: 16 * Chris Lahey <clahey@ximian.com> 17 * 18 * Copyright (C) 1999-2008 Novell, Inc. (www.novell.com) 19 * 20 */ 21 22 #if !defined (__E_UTIL_H_INSIDE__) && !defined (LIBEUTIL_COMPILATION) 23 #error "Only <e-util/e-util.h> should be included directly." 24 #endif 25 26 #ifndef _E_TABLE_COLUMN_SPECIFICATION_H_ 27 #define _E_TABLE_COLUMN_SPECIFICATION_H_ 28 29 #include <glib-object.h> 30 31 /* Standard GObject macros */ 32 #define E_TYPE_TABLE_COLUMN_SPECIFICATION \ 33 (e_table_column_specification_get_type ()) 34 #define E_TABLE_COLUMN_SPECIFICATION(obj) \ 35 (G_TYPE_CHECK_INSTANCE_CAST \ 36 ((obj), E_TYPE_TABLE_COLUMN_SPECIFICATION, ETableColumnSpecification)) 37 #define E_TABLE_COLUMN_SPECIFICATION_CLASS(cls) \ 38 (G_TYPE_CHECK_CLASS_CAST \ 39 ((cls), E_TYPE_TABLE_COLUMN_SPECIFICATION, ETableColumnSpecificationClass)) 40 #define E_IS_TABLE_COLUMN_SPECIFICATION(obj) \ 41 (G_TYPE_CHECK_INSTANCE_TYPE \ 42 ((obj), E_TYPE_TABLE_COLUMN_SPECIFICATION)) 43 #define E_IS_TABLE_COLUMN_SPECIFICATION_CLASS(cls) \ 44 (G_TYPE_CHECK_CLASS_TYPE \ 45 ((cls), E_TYPE_TABLE_COLUMN_SPECIFICATION)) 46 #define E_TABLE_COLUMN_SPECIFICATION_GET_CLASS(obj) \ 47 (G_TYPE_INSTANCE_GET_CLASS \ 48 ((obj), E_TYPE_TABLE_COLUMN_SPECIFICATION, ETableColumnSpecificationClass)) 49 50 G_BEGIN_DECLS 51 52 typedef struct _ETableColumnSpecification ETableColumnSpecification; 53 typedef struct _ETableColumnSpecificationClass ETableColumnSpecificationClass; 54 55 struct _ETableColumnSpecification { 56 GObject parent; 57 58 gint model_col; 59 gint compare_col; 60 gchar *title; 61 gchar *pixbuf; 62 63 gdouble expansion; 64 gint minimum_width; 65 gboolean resizable; 66 gboolean disabled; 67 gboolean sortable; 68 69 gchar *cell; 70 gchar *compare; 71 gchar *search; 72 gint priority; 73 }; 74 75 struct _ETableColumnSpecificationClass { 76 GObjectClass parent_class; 77 }; 78 79 GType e_table_column_specification_get_type (void) G_GNUC_CONST; 80 ETableColumnSpecification * 81 e_table_column_specification_new (void); 82 gboolean e_table_column_specification_equal 83 (ETableColumnSpecification *spec_a, 84 ETableColumnSpecification *spec_b); 85 86 G_END_DECLS 87 88 #endif /* _E_TABLE_COLUMN_SPECIFICATION_H_ */ 89