34
36
#include "gimptextlayout.h"
37
static void gimp_text_layout_class_init (GimpTextLayoutClass *klass);
38
static void gimp_text_layout_init (GimpTextLayout *layout);
39
static void gimp_text_layout_finalize (GObject *object);
41
static void gimp_text_layout_position (GimpTextLayout *layout);
43
static PangoContext * gimp_text_get_pango_context (GimpText *text,
47
static gint gimp_text_layout_pixel_size (Gimp *gimp,
51
static gint gimp_text_layout_point_size (Gimp *gimp,
57
static GObjectClass * parent_class = NULL;
61
gimp_text_layout_get_type (void)
63
static GType layout_type = 0;
67
static const GTypeInfo layout_info =
69
sizeof (GimpTextLayoutClass),
71
(GBaseFinalizeFunc) NULL,
72
(GClassInitFunc) gimp_text_layout_class_init,
73
NULL, /* class_finalize */
74
NULL, /* class_data */
75
sizeof (GimpTextLayout),
77
(GInstanceInitFunc) gimp_text_layout_init,
80
layout_type = g_type_register_static (G_TYPE_OBJECT,
39
static void gimp_text_layout_finalize (GObject *object);
41
static void gimp_text_layout_position (GimpTextLayout *layout);
43
static PangoContext * gimp_text_get_pango_context (GimpText *text,
47
static gint gimp_text_layout_pixel_size (Gimp *gimp,
51
static gint gimp_text_layout_point_size (Gimp *gimp,
57
G_DEFINE_TYPE (GimpTextLayout, gimp_text_layout, G_TYPE_OBJECT)
59
#define parent_class gimp_text_layout_parent_class
89
63
gimp_text_layout_class_init (GimpTextLayoutClass *klass)
91
GObjectClass *object_class;
93
object_class = G_OBJECT_CLASS (klass);
95
parent_class = g_type_class_peek_parent (klass);
65
GObjectClass *object_class = G_OBJECT_CLASS (klass);
97
67
object_class->finalize = gimp_text_layout_finalize;
213
181
text->line_spacing,
184
if (fabs (text->letter_spacing) > 0.1)
186
PangoAttrList *attrs = pango_attr_list_new ();
187
PangoAttribute *attr;
189
attr = pango_attr_letter_spacing_new (text->letter_spacing * PANGO_SCALE);
191
attr->start_index = 0;
192
attr->end_index = -1;
194
pango_attr_list_insert (attrs, attr);
196
pango_layout_set_attributes (layout->layout, attrs);
197
pango_attr_list_unref (attrs);
216
200
gimp_text_layout_position (layout);
218
202
switch (text->box_mode)