Github User Fetcher 1.0.0
C Application with Server and GUI
Loading...
Searching...
No Matches
pango-attributes.h
Go to the documentation of this file.
1/* Pango
2 * pango-attributes.h: Attributed text
3 *
4 * Copyright (C) 2000 Red Hat Software
5 *
6 * This library is free software; you can redistribute it and/or
7 * modify it under the terms of the GNU Library General Public
8 * License as published by the Free Software Foundation; either
9 * version 2 of the License, or (at your option) any later version.
10 *
11 * This library is distributed in the hope that it will be useful,
12 * but WITHOUT ANY WARRANTY; without even the implied warranty of
13 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
14 * Library General Public License for more details.
15 *
16 * You should have received a copy of the GNU Library General Public
17 * License along with this library; if not, write to the
18 * Free Software Foundation, Inc., 59 Temple Place - Suite 330,
19 * Boston, MA 02111-1307, USA.
20 */
21
22#ifndef __PANGO_ATTRIBUTES_H__
23#define __PANGO_ATTRIBUTES_H__
24
25#include <pango/pango-font.h>
26#include <pango/pango-color.h>
27#include <glib-object.h>
28
30
31
34
44
45/**
46 * PangoAttrType:
47 * @PANGO_ATTR_INVALID: does not happen
48 * @PANGO_ATTR_LANGUAGE: language ([struct@Pango.AttrLanguage])
49 * @PANGO_ATTR_FAMILY: font family name list ([struct@Pango.AttrString])
50 * @PANGO_ATTR_STYLE: font slant style ([struct@Pango.AttrInt])
51 * @PANGO_ATTR_WEIGHT: font weight ([struct@Pango.AttrInt])
52 * @PANGO_ATTR_VARIANT: font variant (normal or small caps) ([struct@Pango.AttrInt])
53 * @PANGO_ATTR_STRETCH: font stretch ([struct@Pango.AttrInt])
54 * @PANGO_ATTR_SIZE: font size in points scaled by %PANGO_SCALE ([struct@Pango.AttrInt])
55 * @PANGO_ATTR_FONT_DESC: font description ([struct@Pango.AttrFontDesc])
56 * @PANGO_ATTR_FOREGROUND: foreground color ([struct@Pango.AttrColor])
57 * @PANGO_ATTR_BACKGROUND: background color ([struct@Pango.AttrColor])
58 * @PANGO_ATTR_UNDERLINE: whether the text has an underline ([struct@Pango.AttrInt])
59 * @PANGO_ATTR_STRIKETHROUGH: whether the text is struck-through ([struct@Pango.AttrInt])
60 * @PANGO_ATTR_RISE: baseline displacement ([struct@Pango.AttrInt])
61 * @PANGO_ATTR_SHAPE: shape ([struct@Pango.AttrShape])
62 * @PANGO_ATTR_SCALE: font size scale factor ([struct@Pango.AttrFloat])
63 * @PANGO_ATTR_FALLBACK: whether fallback is enabled ([struct@Pango.AttrInt])
64 * @PANGO_ATTR_LETTER_SPACING: letter spacing ([struct@PangoAttrInt])
65 * @PANGO_ATTR_UNDERLINE_COLOR: underline color ([struct@Pango.AttrColor])
66 * @PANGO_ATTR_STRIKETHROUGH_COLOR: strikethrough color ([struct@Pango.AttrColor])
67 * @PANGO_ATTR_ABSOLUTE_SIZE: font size in pixels scaled by %PANGO_SCALE ([struct@Pango.AttrInt])
68 * @PANGO_ATTR_GRAVITY: base text gravity ([struct@Pango.AttrInt])
69 * @PANGO_ATTR_GRAVITY_HINT: gravity hint ([struct@Pango.AttrInt])
70 * @PANGO_ATTR_FONT_FEATURES: OpenType font features ([struct@Pango.AttrFontFeatures]). Since 1.38
71 * @PANGO_ATTR_FOREGROUND_ALPHA: foreground alpha ([struct@Pango.AttrInt]). Since 1.38
72 * @PANGO_ATTR_BACKGROUND_ALPHA: background alpha ([struct@Pango.AttrInt]). Since 1.38
73 * @PANGO_ATTR_ALLOW_BREAKS: whether breaks are allowed ([struct@Pango.AttrInt]). Since 1.44
74 * @PANGO_ATTR_SHOW: how to render invisible characters ([struct@Pango.AttrInt]). Since 1.44
75 * @PANGO_ATTR_INSERT_HYPHENS: whether to insert hyphens at intra-word line breaks ([struct@Pango.AttrInt]). Since 1.44
76 * @PANGO_ATTR_OVERLINE: whether the text has an overline ([struct@Pango.AttrInt]). Since 1.46
77 * @PANGO_ATTR_OVERLINE_COLOR: overline color ([struct@Pango.AttrColor]). Since 1.46
78 * @PANGO_ATTR_LINE_HEIGHT: line height factor ([struct@Pango.AttrFloat]). Since: 1.50
79 * @PANGO_ATTR_ABSOLUTE_LINE_HEIGHT: line height ([struct@Pango.AttrInt]). Since: 1.50
80 * @PANGO_ATTR_WORD: override segmentation to classify the range of the attribute as a single word ([struct@Pango.AttrInt]). Since 1.50
81 * @PANGO_ATTR_SENTENCE: override segmentation to classify the range of the attribute as a single sentence ([struct@Pango.AttrInt]). Since 1.50
82 * @PANGO_ATTR_BASELINE_SHIFT: baseline displacement ([struct@Pango.AttrInt]). Since 1.50
83 * @PANGO_ATTR_FONT_SCALE: font-relative size change ([struct@Pango.AttrInt]). Since 1.50
84 *
85 * The `PangoAttrType` distinguishes between different types of attributes.
86 *
87 * Along with the predefined values, it is possible to allocate additional
88 * values for custom attributes using [func@AttrType.register]. The predefined
89 * values are given below. The type of structure used to store the attribute is
90 * listed in parentheses after the description.
91 */
92typedef enum
93{
94 PANGO_ATTR_INVALID, /* 0 is an invalid attribute type */
95 PANGO_ATTR_LANGUAGE, /* PangoAttrLanguage */
96 PANGO_ATTR_FAMILY, /* PangoAttrString */
97 PANGO_ATTR_STYLE, /* PangoAttrInt */
98 PANGO_ATTR_WEIGHT, /* PangoAttrInt */
99 PANGO_ATTR_VARIANT, /* PangoAttrInt */
100 PANGO_ATTR_STRETCH, /* PangoAttrInt */
101 PANGO_ATTR_SIZE, /* PangoAttrSize */
102 PANGO_ATTR_FONT_DESC, /* PangoAttrFontDesc */
103 PANGO_ATTR_FOREGROUND, /* PangoAttrColor */
104 PANGO_ATTR_BACKGROUND, /* PangoAttrColor */
105 PANGO_ATTR_UNDERLINE, /* PangoAttrInt */
106 PANGO_ATTR_STRIKETHROUGH, /* PangoAttrInt */
107 PANGO_ATTR_RISE, /* PangoAttrInt */
108 PANGO_ATTR_SHAPE, /* PangoAttrShape */
109 PANGO_ATTR_SCALE, /* PangoAttrFloat */
110 PANGO_ATTR_FALLBACK, /* PangoAttrInt */
111 PANGO_ATTR_LETTER_SPACING, /* PangoAttrInt */
112 PANGO_ATTR_UNDERLINE_COLOR, /* PangoAttrColor */
114 PANGO_ATTR_ABSOLUTE_SIZE, /* PangoAttrSize */
115 PANGO_ATTR_GRAVITY, /* PangoAttrInt */
116 PANGO_ATTR_GRAVITY_HINT, /* PangoAttrInt */
117 PANGO_ATTR_FONT_FEATURES, /* PangoAttrFontFeatures */
118 PANGO_ATTR_FOREGROUND_ALPHA, /* PangoAttrInt */
119 PANGO_ATTR_BACKGROUND_ALPHA, /* PangoAttrInt */
120 PANGO_ATTR_ALLOW_BREAKS, /* PangoAttrInt */
121 PANGO_ATTR_SHOW, /* PangoAttrInt */
122 PANGO_ATTR_INSERT_HYPHENS, /* PangoAttrInt */
123 PANGO_ATTR_OVERLINE, /* PangoAttrInt */
124 PANGO_ATTR_OVERLINE_COLOR, /* PangoAttrColor */
125 PANGO_ATTR_LINE_HEIGHT, /* PangoAttrFloat */
127 PANGO_ATTR_TEXT_TRANSFORM, /* PangoAttrInt */
128 PANGO_ATTR_WORD, /* PangoAttrInt */
129 PANGO_ATTR_SENTENCE, /* PangoAttrInt */
130 PANGO_ATTR_BASELINE_SHIFT, /* PangoAttrSize */
131 PANGO_ATTR_FONT_SCALE, /* PangoAttrInt */
133
134/**
135 * PangoUnderline:
136 * @PANGO_UNDERLINE_NONE: no underline should be drawn
137 * @PANGO_UNDERLINE_SINGLE: a single underline should be drawn
138 * @PANGO_UNDERLINE_DOUBLE: a double underline should be drawn
139 * @PANGO_UNDERLINE_LOW: a single underline should be drawn at a
140 * position beneath the ink extents of the text being
141 * underlined. This should be used only for underlining
142 * single characters, such as for keyboard accelerators.
143 * %PANGO_UNDERLINE_SINGLE should be used for extended
144 * portions of text.
145 * @PANGO_UNDERLINE_ERROR: an underline indicating an error should
146 * be drawn below. The exact style of rendering is up to the
147 * `PangoRenderer` in use, but typical styles include wavy
148 * or dotted lines.
149 * This underline is typically used to indicate an error such
150 * as a possible mispelling; in some cases a contrasting color
151 * may automatically be used. This type of underlining is
152 * available since Pango 1.4.
153 * @PANGO_UNDERLINE_SINGLE_LINE: Like @PANGO_UNDERLINE_SINGLE, but
154 * drawn continuously across multiple runs. This type
155 * of underlining is available since Pango 1.46.
156 * @PANGO_UNDERLINE_DOUBLE_LINE: Like @PANGO_UNDERLINE_DOUBLE, but
157 * drawn continuously across multiple runs. This type
158 * of underlining is available since Pango 1.46.
159 * @PANGO_UNDERLINE_ERROR_LINE: Like @PANGO_UNDERLINE_ERROR, but
160 * drawn continuously across multiple runs. This type
161 * of underlining is available since Pango 1.46.
162 *
163 * The `PangoUnderline` enumeration is used to specify whether text
164 * should be underlined, and if so, the type of underlining.
165 */
176
177
178/**
179 * PangoOverline:
180 * @PANGO_OVERLINE_NONE: no overline should be drawn
181 * @PANGO_OVERLINE_SINGLE: Draw a single line above the ink
182 * extents of the text being underlined.
183 *
184 * The `PangoOverline` enumeration is used to specify whether text
185 * should be overlined, and if so, the type of line.
186 *
187 * Since: 1.46
188 */
193
194/**
195 * PangoShowFlags:
196 * @PANGO_SHOW_NONE: No special treatment for invisible characters
197 * @PANGO_SHOW_SPACES: Render spaces, tabs and newlines visibly
198 * @PANGO_SHOW_LINE_BREAKS: Render line breaks visibly
199 * @PANGO_SHOW_IGNORABLES: Render default-ignorable Unicode
200 * characters visibly
201 *
202 * These flags affect how Pango treats characters that are normally
203 * not visible in the output.
204 *
205 * Since: 1.44
206 */
213
214/**
215 * PangoTextTransform:
216 * @PANGO_TEXT_TRANSFORM_NONE: Leave text unchanged
217 * @PANGO_TEXT_TRANSFORM_LOWERCASE: Display letters and numbers as lowercase
218 * @PANGO_TEXT_TRANSFORM_UPPERCASE: Display letters and numbers as uppercase
219 * @PANGO_TEXT_TRANSFORM_CAPITALIZE: Display the first character of a word
220 * in titlecase
221 *
222 * An enumeration that affects how Pango treats characters during shaping.
223 *
224 * Since: 1.50
225 */
232
233/**
234 * PangoBaselineShift:
235 * @PANGO_BASELINE_SHIFT_NONE: Leave the baseline unchanged
236 * @PANGO_BASELINE_SHIFT_SUPERSCRIPT: Shift the baseline to the superscript position,
237 * relative to the previous run
238 * @PANGO_BASELINE_SHIFT_SUBSCRIPT: Shift the baseline to the subscript position,
239 * relative to the previous run
240 *
241 * An enumeration that affects baseline shifts between runs.
242 *
243 * Since: 1.50
244 */
250
251/**
252 * PangoFontScale:
253 * @PANGO_FONT_SCALE_NONE: Leave the font size unchanged
254 * @PANGO_FONT_SCALE_SUPERSCRIPT: Change the font to a size suitable for superscripts
255 * @PANGO_FONT_SCALE_SUBSCRIPT: Change the font to a size suitable for subscripts
256 * @PANGO_FONT_SCALE_SMALL_CAPS: Change the font to a size suitable for Small Caps
257 *
258 * An enumeration that affects font sizes for superscript
259 * and subscript positioning and for (emulated) Small Caps.
260 *
261 * Since: 1.50
262 */
269
270/**
271 * PANGO_ATTR_INDEX_FROM_TEXT_BEGINNING:
272 *
273 * Value for @start_index in `PangoAttribute` that indicates
274 * the beginning of the text.
275 *
276 * Since: 1.24
277 */
278#define PANGO_ATTR_INDEX_FROM_TEXT_BEGINNING ((guint)0)
279
280/**
281 * PANGO_ATTR_INDEX_TO_TEXT_END: (value 4294967295)
282 *
283 * Value for @end_index in `PangoAttribute` that indicates
284 * the end of the text.
285 *
286 * Since: 1.24
287 */
288#define PANGO_ATTR_INDEX_TO_TEXT_END ((guint)(G_MAXUINT + 0))
289
290/**
291 * PangoAttribute:
292 * @klass: the class structure holding information about the type of the attribute
293 * @start_index: the start index of the range (in bytes).
294 * @end_index: end index of the range (in bytes). The character at this index
295 * is not included in the range.
296 *
297 * The `PangoAttribute` structure represents the common portions of all
298 * attributes.
299 *
300 * Particular types of attributes include this structure as their initial
301 * portion. The common portion of the attribute holds the range to which
302 * the value in the type-specific part of the attribute applies and should
303 * be initialized using [method@Pango.Attribute.init]. By default, an attribute
304 * will have an all-inclusive range of [0,%G_MAXUINT].
305 */
312
313/**
314 * PangoAttrFilterFunc:
315 * @attribute: a Pango attribute
316 * @user_data: user data passed to the function
317 *
318 * Type of a function filtering a list of attributes.
319 *
320 * Return value: %TRUE if the attribute should be selected for
321 * filtering, %FALSE otherwise.
322 */
324 gpointer user_data);
325
326/**
327 * PangoAttrDataCopyFunc:
328 * @user_data: user data to copy
329 *
330 * Type of a function that can duplicate user data for an attribute.
331 *
332 * Return value: new copy of @user_data.
333 **/
335
336/**
337 * PangoAttrClass:
338 * @type: the type ID for this attribute
339 * @copy: function to duplicate an attribute of this type
340 * (see [method@Pango.Attribute.copy])
341 * @destroy: function to free an attribute of this type
342 * (see [method@Pango.Attribute.destroy])
343 * @equal: function to check two attributes of this type for equality
344 * (see [method@Pango.Attribute.equal])
345 *
346 * The `PangoAttrClass` structure stores the type and operations for
347 * a particular type of attribute.
348 *
349 * The functions in this structure should not be called directly. Instead,
350 * one should use the wrapper functions provided for `PangoAttribute`.
351 */
353{
354 /*< public >*/
356 PangoAttribute * (*copy) (const PangoAttribute *attr);
357 void (*destroy) (PangoAttribute *attr);
358 gboolean (*equal) (const PangoAttribute *attr1, const PangoAttribute *attr2);
359};
360
361/**
362 * PangoAttrString:
363 * @attr: the common portion of the attribute
364 * @value: the string which is the value of the attribute
365 *
366 * The `PangoAttrString` structure is used to represent attributes with
367 * a string value.
368 */
374/**
375 * PangoAttrLanguage:
376 * @attr: the common portion of the attribute
377 * @value: the `PangoLanguage` which is the value of the attribute
378 *
379 * The `PangoAttrLanguage` structure is used to represent attributes that
380 * are languages.
381 */
387/**
388 * PangoAttrInt:
389 * @attr: the common portion of the attribute
390 * @value: the value of the attribute
391 *
392 * The `PangoAttrInt` structure is used to represent attributes with
393 * an integer or enumeration value.
394 */
400/**
401 * PangoAttrFloat:
402 * @attr: the common portion of the attribute
403 * @value: the value of the attribute
404 *
405 * The `PangoAttrFloat` structure is used to represent attributes with
406 * a float or double value.
407 */
413/**
414 * PangoAttrColor:
415 * @attr: the common portion of the attribute
416 * @color: the `PangoColor` which is the value of the attribute
417 *
418 * The `PangoAttrColor` structure is used to represent attributes that
419 * are colors.
420 */
426
427/**
428 * PangoAttrSize:
429 * @attr: the common portion of the attribute
430 * @size: size of font, in units of 1/%PANGO_SCALE of a point (for
431 * %PANGO_ATTR_SIZE) or of a device unit (for %PANGO_ATTR_ABSOLUTE_SIZE)
432 * @absolute: whether the font size is in device units or points.
433 * This field is only present for compatibility with Pango-1.8.0
434 * (%PANGO_ATTR_ABSOLUTE_SIZE was added in 1.8.1); and always will
435 * be %FALSE for %PANGO_ATTR_SIZE and %TRUE for %PANGO_ATTR_ABSOLUTE_SIZE.
436 *
437 * The `PangoAttrSize` structure is used to represent attributes which
438 * set font size.
439 */
446
447/**
448 * PangoAttrShape:
449 * @attr: the common portion of the attribute
450 * @ink_rect: the ink rectangle to restrict to
451 * @logical_rect: the logical rectangle to restrict to
452 * @data: user data set (see [func@Pango.AttrShape.new_with_data])
453 * @copy_func: copy function for the user data
454 * @destroy_func: destroy function for the user data
455 *
456 * The `PangoAttrShape` structure is used to represent attributes which
457 * impose shape restrictions.
458 */
469
470/**
471 * PangoAttrFontDesc:
472 * @attr: the common portion of the attribute
473 * @desc: the font description which is the value of this attribute
474 *
475 * The `PangoAttrFontDesc` structure is used to store an attribute that
476 * sets all aspects of the font description at once.
477 */
483
484/**
485 * PangoAttrFontFeatures:
486 * @attr: the common portion of the attribute
487 * @features: the features, as a string in CSS syntax
488 *
489 * The `PangoAttrFontFeatures` structure is used to represent OpenType
490 * font features as an attribute.
491 *
492 * Since: 1.38
493 */
499
502
509 const PangoAttrClass *klass);
516 const PangoAttribute *attr2) G_GNUC_PURE;
517
524 guint16 green,
525 guint16 blue);
528 guint16 green,
529 guint16 blue);
544
549 guint16 green,
550 guint16 blue);
555 guint16 green,
556 guint16 blue);
564PangoAttribute * pango_attr_scale_new (double scale_factor);
571 const PangoRectangle *logical_rect);
574 const PangoRectangle *logical_rect,
575 gpointer data,
576 PangoAttrDataCopyFunc copy_func,
577 GDestroyNotify destroy_func);
590
595
602 guint16 green,
603 guint16 blue);
612
631
632/* Attribute lists */
633
634typedef struct _PangoAttrList PangoAttrList;
635typedef struct _PangoAttrIterator PangoAttrIterator;
636
637#define PANGO_TYPE_ATTR_LIST pango_attr_list_get_type ()
638
639/**
640 * PangoAttrIterator:
641 *
642 * A `PangoAttrIterator` is used to iterate through a `PangoAttrList`.
643 *
644 * A new iterator is created with [method@Pango.AttrList.get_iterator].
645 * Once the iterator is created, it can be advanced through the style
646 * changes in the text using [method@Pango.AttrIterator.next]. At each
647 * style change, the range of the current style segment and the attributes
648 * currently in effect can be queried.
649 */
650
651/**
652 * PangoAttrList:
653 *
654 * A `PangoAttrList` represents a list of attributes that apply to a section
655 * of text.
656 *
657 * The attributes in a `PangoAttrList` are, in general, allowed to overlap in
658 * an arbitrary fashion. However, if the attributes are manipulated only through
659 * [method@Pango.AttrList.change], the overlap between properties will meet
660 * stricter criteria.
661 *
662 * Since the `PangoAttrList` structure is stored as a linear list, it is not
663 * suitable for storing attributes for large amounts of text. In general, you
664 * should not use a single `PangoAttrList` for more than one paragraph of text.
665 */
666
669
680 PangoAttribute *attr);
683 PangoAttribute *attr);
686 PangoAttribute *attr);
689 PangoAttrList *other,
690 int pos,
691 int len);
694 int pos,
695 int remove,
696 int add);
697
701 gpointer data);
702
705
708 PangoAttrList *other_list);
709
714
717
720
723 int *start,
724 int *end);
733 PangoAttrType type);
737 PangoLanguage **language,
738 GSList **extra_attrs);
741
745
747
748#endif /* __PANGO_ATTRIBUTES_H__ */
unsigned short guint16
Definition glibconfig.h:49
#define G_GNUC_PURE
Definition gmacros.h:287
#define G_END_DECLS
Definition gmacros.h:910
#define G_BEGIN_DECLS
Definition gmacros.h:909
#define G_GNUC_CONST
Definition gmacros.h:637
#define G_DEFINE_AUTOPTR_CLEANUP_FUNC(TypeName, func)
Definition gmacros.h:1400
typedefG_BEGIN_DECLS struct _GSList GSList
Definition gslist.h:39
gsize GType
Definition gtype.h:427
gint gboolean
Definition gtypes.h:56
G_BEGIN_DECLS typedef char gchar
Definition gtypes.h:52
void * gpointer
Definition gtypes.h:109
const void * gconstpointer
Definition gtypes.h:110
void(* GDestroyNotify)(gpointer data)
Definition gtypes.h:140
unsigned int guint
Definition gtypes.h:61
const char * name
Definition lsqlite3.c:2154
PANGO_AVAILABLE_IN_ALL void pango_attr_iterator_get_font(PangoAttrIterator *iterator, PangoFontDescription *desc, PangoLanguage **language, GSList **extra_attrs)
PANGO_AVAILABLE_IN_ALL void pango_attr_iterator_destroy(PangoAttrIterator *iterator)
PANGO_AVAILABLE_IN_ALL void pango_attr_list_unref(PangoAttrList *list)
PANGO_AVAILABLE_IN_ALL PangoAttribute * pango_attr_underline_new(PangoUnderline underline)
gpointer(* PangoAttrDataCopyFunc)(gconstpointer user_data)
PANGO_AVAILABLE_IN_1_20 void pango_attribute_init(PangoAttribute *attr, const PangoAttrClass *klass)
PANGO_AVAILABLE_IN_1_38 PangoAttribute * pango_attr_foreground_alpha_new(guint16 alpha)
PANGO_AVAILABLE_IN_1_16 PangoAttribute * pango_attr_gravity_hint_new(PangoGravityHint hint)
PANGO_AVAILABLE_IN_ALL void pango_attr_list_insert_before(PangoAttrList *list, PangoAttribute *attr)
PangoTextTransform
@ PANGO_TEXT_TRANSFORM_CAPITALIZE
@ PANGO_TEXT_TRANSFORM_UPPERCASE
@ PANGO_TEXT_TRANSFORM_LOWERCASE
@ PANGO_TEXT_TRANSFORM_NONE
PANGO_AVAILABLE_IN_1_44 void pango_attr_list_update(PangoAttrList *list, int pos, int remove, int add)
PANGO_AVAILABLE_IN_1_50 PangoAttrFontFeatures * pango_attribute_as_font_features(PangoAttribute *attr)
PangoShowFlags
@ PANGO_SHOW_LINE_BREAKS
@ PANGO_SHOW_SPACES
@ PANGO_SHOW_NONE
@ PANGO_SHOW_IGNORABLES
PANGO_AVAILABLE_IN_ALL PangoAttribute * pango_attr_size_new(int size)
PANGO_AVAILABLE_IN_1_44 GSList * pango_attr_list_get_attributes(PangoAttrList *list)
PANGO_AVAILABLE_IN_1_10 PangoAttrList * pango_attr_list_ref(PangoAttrList *list)
PANGO_AVAILABLE_IN_ALL PangoAttrIterator * pango_attr_iterator_copy(PangoAttrIterator *iterator)
PANGO_AVAILABLE_IN_ALL PangoAttribute * pango_attr_style_new(PangoStyle style)
PANGO_AVAILABLE_IN_ALL void pango_attr_iterator_range(PangoAttrIterator *iterator, int *start, int *end)
PANGO_AVAILABLE_IN_1_46 PangoAttribute * pango_attr_overline_new(PangoOverline overline)
PANGO_AVAILABLE_IN_1_4 PangoAttribute * pango_attr_fallback_new(gboolean enable_fallback)
PANGO_AVAILABLE_IN_1_46 PangoAttribute * pango_attr_overline_color_new(guint16 red, guint16 green, guint16 blue)
PANGO_AVAILABLE_IN_1_44 PangoAttribute * pango_attr_insert_hyphens_new(gboolean insert_hyphens)
PANGO_AVAILABLE_IN_1_50 PangoAttribute * pango_attr_baseline_shift_new(int shift)
PANGO_AVAILABLE_IN_ALL PangoAttribute * pango_attr_strikethrough_new(gboolean strikethrough)
PANGO_AVAILABLE_IN_1_38 PangoAttribute * pango_attr_background_alpha_new(guint16 alpha)
PANGO_AVAILABLE_IN_ALL PangoAttribute * pango_attr_scale_new(double scale_factor)
gboolean(* PangoAttrFilterFunc)(PangoAttribute *attribute, gpointer user_data)
PANGO_AVAILABLE_IN_1_50 PangoAttrFloat * pango_attribute_as_float(PangoAttribute *attr)
PANGO_AVAILABLE_IN_ALL PangoAttribute * pango_attr_foreground_new(guint16 red, guint16 green, guint16 blue)
PANGO_AVAILABLE_IN_1_8 PangoAttribute * pango_attr_size_new_absolute(int size)
PANGO_AVAILABLE_IN_1_16 PangoAttribute * pango_attr_gravity_new(PangoGravity gravity)
PANGO_AVAILABLE_IN_1_50 PangoAttribute * pango_attr_font_scale_new(PangoFontScale scale)
PANGO_AVAILABLE_IN_ALL void pango_attribute_destroy(PangoAttribute *attr)
PANGO_AVAILABLE_IN_ALL PangoAttribute * pango_attr_iterator_get(PangoAttrIterator *iterator, PangoAttrType type)
PANGO_AVAILABLE_IN_ALL void pango_attr_list_splice(PangoAttrList *list, PangoAttrList *other, int pos, int len)
PANGO_AVAILABLE_IN_1_50 PangoAttribute * pango_attr_text_transform_new(PangoTextTransform transform)
PangoAttrType
@ PANGO_ATTR_ABSOLUTE_LINE_HEIGHT
@ PANGO_ATTR_STYLE
@ PANGO_ATTR_LETTER_SPACING
@ PANGO_ATTR_SHOW
@ PANGO_ATTR_WORD
@ PANGO_ATTR_GRAVITY
@ PANGO_ATTR_VARIANT
@ PANGO_ATTR_TEXT_TRANSFORM
@ PANGO_ATTR_FONT_DESC
@ PANGO_ATTR_UNDERLINE_COLOR
@ PANGO_ATTR_STRETCH
@ PANGO_ATTR_FONT_SCALE
@ PANGO_ATTR_SIZE
@ PANGO_ATTR_WEIGHT
@ PANGO_ATTR_FOREGROUND
@ PANGO_ATTR_SCALE
@ PANGO_ATTR_LANGUAGE
@ PANGO_ATTR_INVALID
@ PANGO_ATTR_UNDERLINE
@ PANGO_ATTR_STRIKETHROUGH
@ PANGO_ATTR_SHAPE
@ PANGO_ATTR_ABSOLUTE_SIZE
@ PANGO_ATTR_FOREGROUND_ALPHA
@ PANGO_ATTR_FAMILY
@ PANGO_ATTR_BACKGROUND_ALPHA
@ PANGO_ATTR_LINE_HEIGHT
@ PANGO_ATTR_ALLOW_BREAKS
@ PANGO_ATTR_OVERLINE
@ PANGO_ATTR_FONT_FEATURES
@ PANGO_ATTR_GRAVITY_HINT
@ PANGO_ATTR_SENTENCE
@ PANGO_ATTR_STRIKETHROUGH_COLOR
@ PANGO_ATTR_INSERT_HYPHENS
@ PANGO_ATTR_BASELINE_SHIFT
@ PANGO_ATTR_OVERLINE_COLOR
@ PANGO_ATTR_RISE
@ PANGO_ATTR_FALLBACK
@ PANGO_ATTR_BACKGROUND
PANGO_AVAILABLE_IN_1_2 PangoAttrList * pango_attr_list_filter(PangoAttrList *list, PangoAttrFilterFunc func, gpointer data)
PANGO_AVAILABLE_IN_ALL PangoAttribute * pango_attr_stretch_new(PangoStretch stretch)
PANGO_AVAILABLE_IN_ALL GType pango_attr_list_get_type(void) G_GNUC_CONST
PANGO_AVAILABLE_IN_1_22 const char * pango_attr_type_get_name(PangoAttrType type) G_GNUC_CONST
PANGO_AVAILABLE_IN_1_50 PangoAttribute * pango_attr_line_height_new_absolute(int height)
PANGO_AVAILABLE_IN_ALL PangoAttribute * pango_attr_rise_new(int rise)
PangoOverline
@ PANGO_OVERLINE_NONE
@ PANGO_OVERLINE_SINGLE
PANGO_AVAILABLE_IN_1_44 GType pango_attr_iterator_get_type(void) G_GNUC_CONST
PANGO_AVAILABLE_IN_ALL void pango_attr_list_change(PangoAttrList *list, PangoAttribute *attr)
PANGO_AVAILABLE_IN_1_50 PangoAttribute * pango_attr_line_height_new(double factor)
PANGO_AVAILABLE_IN_1_50 PangoAttrFontDesc * pango_attribute_as_font_desc(PangoAttribute *attr)
struct _PangoAttrIterator PangoAttrIterator
PangoFontScale
@ PANGO_FONT_SCALE_SUBSCRIPT
@ PANGO_FONT_SCALE_SMALL_CAPS
@ PANGO_FONT_SCALE_NONE
@ PANGO_FONT_SCALE_SUPERSCRIPT
struct _PangoAttrList PangoAttrList
PANGO_AVAILABLE_IN_ALL PangoAttrList * pango_attr_list_new(void)
PANGO_AVAILABLE_IN_1_2 GSList * pango_attr_iterator_get_attrs(PangoAttrIterator *iterator)
PANGO_AVAILABLE_IN_1_38 PangoAttribute * pango_attr_font_features_new(const char *features)
PANGO_AVAILABLE_IN_1_50 PangoAttribute * pango_attr_sentence_new(void)
PANGO_AVAILABLE_IN_ALL gboolean pango_attribute_equal(const PangoAttribute *attr1, const PangoAttribute *attr2) G_GNUC_PURE
PANGO_AVAILABLE_IN_1_50 PangoAttribute * pango_attr_word_new(void)
PANGO_AVAILABLE_IN_1_8 PangoAttribute * pango_attr_underline_color_new(guint16 red, guint16 green, guint16 blue)
PANGO_AVAILABLE_IN_ALL PangoAttribute * pango_attribute_copy(const PangoAttribute *attr)
PANGO_AVAILABLE_IN_1_50 char * pango_attr_list_to_string(PangoAttrList *list)
typedefG_BEGIN_DECLS struct _PangoAttribute PangoAttribute
PangoBaselineShift
@ PANGO_BASELINE_SHIFT_SUPERSCRIPT
@ PANGO_BASELINE_SHIFT_SUBSCRIPT
@ PANGO_BASELINE_SHIFT_NONE
PANGO_AVAILABLE_IN_1_46 gboolean pango_attr_list_equal(PangoAttrList *list, PangoAttrList *other_list)
PANGO_AVAILABLE_IN_ALL PangoAttribute * pango_attr_language_new(PangoLanguage *language)
PANGO_AVAILABLE_IN_1_44 PangoAttribute * pango_attr_show_new(PangoShowFlags flags)
PANGO_AVAILABLE_IN_1_50 PangoAttrInt * pango_attribute_as_int(PangoAttribute *attr)
PANGO_AVAILABLE_IN_1_50 PangoAttrColor * pango_attribute_as_color(PangoAttribute *attr)
PANGO_AVAILABLE_IN_ALL PangoAttribute * pango_attr_weight_new(PangoWeight weight)
PANGO_AVAILABLE_IN_ALL PangoAttribute * pango_attr_background_new(guint16 red, guint16 green, guint16 blue)
PANGO_AVAILABLE_IN_ALL PangoAttrIterator * pango_attr_list_get_iterator(PangoAttrList *list)
PANGO_AVAILABLE_IN_ALL PangoAttribute * pango_attr_family_new(const char *family)
PANGO_AVAILABLE_IN_1_50 PangoAttrLanguage * pango_attribute_as_language(PangoAttribute *attr)
PANGO_AVAILABLE_IN_ALL GType pango_attribute_get_type(void) G_GNUC_CONST
PANGO_AVAILABLE_IN_ALL PangoAttrList * pango_attr_list_copy(PangoAttrList *list)
PANGO_AVAILABLE_IN_1_50 PangoAttrShape * pango_attribute_as_shape(PangoAttribute *attr)
PANGO_AVAILABLE_IN_ALL PangoAttribute * pango_attr_variant_new(PangoVariant variant)
PANGO_AVAILABLE_IN_1_50 PangoAttrSize * pango_attribute_as_size(PangoAttribute *attr)
PANGO_AVAILABLE_IN_1_50 PangoAttrList * pango_attr_list_from_string(const char *text)
PangoUnderline
@ PANGO_UNDERLINE_NONE
@ PANGO_UNDERLINE_DOUBLE
@ PANGO_UNDERLINE_ERROR
@ PANGO_UNDERLINE_ERROR_LINE
@ PANGO_UNDERLINE_LOW
@ PANGO_UNDERLINE_DOUBLE_LINE
@ PANGO_UNDERLINE_SINGLE_LINE
@ PANGO_UNDERLINE_SINGLE
PANGO_AVAILABLE_IN_1_50 PangoAttrString * pango_attribute_as_string(PangoAttribute *attr)
PANGO_AVAILABLE_IN_ALL PangoAttribute * pango_attr_shape_new(const PangoRectangle *ink_rect, const PangoRectangle *logical_rect)
PANGO_AVAILABLE_IN_1_8 PangoAttribute * pango_attr_strikethrough_color_new(guint16 red, guint16 green, guint16 blue)
PANGO_AVAILABLE_IN_1_44 PangoAttribute * pango_attr_allow_breaks_new(gboolean allow_breaks)
PANGO_AVAILABLE_IN_ALL gboolean pango_attr_iterator_next(PangoAttrIterator *iterator)
PANGO_AVAILABLE_IN_ALL PangoAttrType pango_attr_type_register(const char *name)
PANGO_AVAILABLE_IN_ALL PangoAttribute * pango_attr_font_desc_new(const PangoFontDescription *desc)
PANGO_AVAILABLE_IN_ALL void pango_attr_list_insert(PangoAttrList *list, PangoAttribute *attr)
PANGO_AVAILABLE_IN_1_6 PangoAttribute * pango_attr_letter_spacing_new(int letter_spacing)
PANGO_AVAILABLE_IN_1_8 PangoAttribute * pango_attr_shape_new_with_data(const PangoRectangle *ink_rect, const PangoRectangle *logical_rect, gpointer data, PangoAttrDataCopyFunc copy_func, GDestroyNotify destroy_func)
typedefG_BEGIN_DECLS struct _PangoColor PangoColor
Definition pango-color.h:31
PangoVariant
Definition pango-font.h:100
PangoStretch
Definition pango-font.h:160
PangoWeight
Definition pango-font.h:130
typedefG_BEGIN_DECLS struct _PangoFontDescription PangoFontDescription
Definition pango-font.h:43
PangoStyle
Definition pango-font.h:74
PangoGravityHint
PangoGravity
struct _PangoLanguage PangoLanguage
Definition pango-types.h:46
#define PANGO_AVAILABLE_IN_1_38
#define PANGO_AVAILABLE_IN_1_10
#define PANGO_AVAILABLE_IN_1_44
#define PANGO_AVAILABLE_IN_1_20
#define PANGO_AVAILABLE_IN_1_16
#define PANGO_AVAILABLE_IN_1_46
#define PANGO_AVAILABLE_IN_1_2
#define PANGO_AVAILABLE_IN_1_22
#define PANGO_AVAILABLE_IN_1_50
#define PANGO_AVAILABLE_IN_1_6
#define PANGO_AVAILABLE_IN_1_4
#define PANGO_AVAILABLE_IN_1_8
#define PANGO_AVAILABLE_IN_ALL
void(* destroy)(PangoAttribute *attr)
gboolean(* equal)(const PangoAttribute *attr1, const PangoAttribute *attr2)
PangoAttrType type
PangoAttribute attr
PangoAttribute attr
PangoFontDescription * desc
PangoAttribute attr
PangoLanguage * value
GDestroyNotify destroy_func
PangoRectangle logical_rect
PangoRectangle ink_rect
PangoAttrDataCopyFunc copy_func
PangoAttribute attr
PangoAttribute attr
PangoAttribute attr
const PangoAttrClass * klass