1/* gtkcellrenderertext.h
2 * Copyright (C) 2000 Red Hat, Inc., Jonathan Blandford <[email protected]>
3 *
4 * This library is free software; you can redistribute it and/or
5 * modify it under the terms of the GNU Library General Public
6 * License as published by the Free Software Foundation; either
7 * version 2 of the License, or (at your option) any later version.
8 *
9 * This library is distributed in the hope that it will be useful,
10 * but WITHOUT ANY WARRANTY; without even the implied warranty of
11 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
12 * Library General Public License for more details.
13 *
14 * You should have received a copy of the GNU Library General Public
15 * License along with this library; if not, write to the
16 * Free Software Foundation, Inc., 59 Temple Place - Suite 330,
17 * Boston, MA 02111-1307, USA.
18 */
19
20#ifndef __GTK_CELL_RENDERER_TEXT_H__
21#define __GTK_CELL_RENDERER_TEXT_H__
22
23
24#if defined(GTK_DISABLE_SINGLE_INCLUDES) && !defined (__GTK_H_INSIDE__) && !defined (GTK_COMPILATION)
25#error "Only <gtk/gtk.h> can be included directly."
26#endif
27
28#include <gtk/gtkcellrenderer.h>
29
30
31G_BEGIN_DECLS
32
33
34#define GTK_TYPE_CELL_RENDERER_TEXT (gtk_cell_renderer_text_get_type ())
35#define GTK_CELL_RENDERER_TEXT(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), GTK_TYPE_CELL_RENDERER_TEXT, GtkCellRendererText))
36#define GTK_CELL_RENDERER_TEXT_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), GTK_TYPE_CELL_RENDERER_TEXT, GtkCellRendererTextClass))
37#define GTK_IS_CELL_RENDERER_TEXT(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), GTK_TYPE_CELL_RENDERER_TEXT))
38#define GTK_IS_CELL_RENDERER_TEXT_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), GTK_TYPE_CELL_RENDERER_TEXT))
39#define GTK_CELL_RENDERER_TEXT_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), GTK_TYPE_CELL_RENDERER_TEXT, GtkCellRendererTextClass))
40
41typedef struct _GtkCellRendererText GtkCellRendererText;
42typedef struct _GtkCellRendererTextClass GtkCellRendererTextClass;
43
44struct _GtkCellRendererText
45{
46 GtkCellRenderer parent;
47
48 /*< private >*/
49 gchar *GSEAL (text);
50 PangoFontDescription *GSEAL (font);
51 gdouble GSEAL (font_scale);
52 PangoColor GSEAL (foreground);
53 PangoColor GSEAL (background);
54
55 PangoAttrList *GSEAL (extra_attrs);
56
57 PangoUnderline GSEAL (underline_style);
58
59 gint GSEAL (rise);
60 gint GSEAL (fixed_height_rows);
61
62 guint GSEAL (strikethrough) : 1;
63
64 guint GSEAL (editable) : 1;
65
66 guint GSEAL (scale_set) : 1;
67
68 guint GSEAL (foreground_set) : 1;
69 guint GSEAL (background_set) : 1;
70
71 guint GSEAL (underline_set) : 1;
72
73 guint GSEAL (rise_set) : 1;
74
75 guint GSEAL (strikethrough_set) : 1;
76
77 guint GSEAL (editable_set) : 1;
78 guint GSEAL (calc_fixed_height) : 1;
79};
80
81struct _GtkCellRendererTextClass
82{
83 GtkCellRendererClass parent_class;
84
85 void (* edited) (GtkCellRendererText *cell_renderer_text,
86 const gchar *path,
87 const gchar *new_text);
88
89 /* Padding for future expansion */
90 void (*_gtk_reserved1) (void);
91 void (*_gtk_reserved2) (void);
92 void (*_gtk_reserved3) (void);
93 void (*_gtk_reserved4) (void);
94};
95
96GType gtk_cell_renderer_text_get_type (void) G_GNUC_CONST;
97GtkCellRenderer *gtk_cell_renderer_text_new (void);
98
99void gtk_cell_renderer_text_set_fixed_height_from_font (GtkCellRendererText *renderer,
100 gint number_of_rows);
101
102
103G_END_DECLS
104
105#endif /* __GTK_CELL_RENDERER_TEXT_H__ */
106