summaryrefslogtreecommitdiff
path: root/pango/pango-glyph.h
diff options
context:
space:
mode:
Diffstat (limited to 'pango/pango-glyph.h')
-rw-r--r--pango/pango-glyph.h258
1 files changed, 129 insertions, 129 deletions
diff --git a/pango/pango-glyph.h b/pango/pango-glyph.h
index 8dafd623..d2b0770b 100644
--- a/pango/pango-glyph.h
+++ b/pango/pango-glyph.h
@@ -25,38 +25,38 @@
G_BEGIN_DECLS
-typedef struct _PangoGlyphGeometry PangoGlyphGeometry;
-typedef struct _PangoGlyphVisAttr PangoGlyphVisAttr;
-typedef struct _PangoGlyphInfo PangoGlyphInfo;
-typedef struct _PangoGlyphString PangoGlyphString;
+typedef struct _Pango2GlyphGeometry Pango2GlyphGeometry;
+typedef struct _Pango2GlyphVisAttr Pango2GlyphVisAttr;
+typedef struct _Pango2GlyphInfo Pango2GlyphInfo;
+typedef struct _Pango2GlyphString Pango2GlyphString;
/* 1024ths of a device unit */
/**
- * PangoGlyphUnit:
+ * Pango2GlyphUnit:
*
- * The `PangoGlyphUnit` type is used to store dimensions within
- * Pango.
+ * The `Pango2GlyphUnit` type is used to store dimensions within
+ * Pango2.
*
- * Dimensions are stored in 1/PANGO_SCALE of a device unit.
+ * Dimensions are stored in 1/PANGO2_SCALE of a device unit.
* (A device unit might be a pixel for screen display, or
- * a point on a printer.) PANGO_SCALE is currently 1024, and
+ * a point on a printer.) PANGO2_SCALE is currently 1024, and
* may change in the future (unlikely though), but you should not
* depend on its exact value.
*
- * The PANGO_PIXELS() macro can be used to convert from glyph units
+ * The PANGO2_PIXELS() macro can be used to convert from glyph units
* into device units with correct rounding.
*/
-typedef gint32 PangoGlyphUnit;
+typedef gint32 Pango2GlyphUnit;
/* Positioning information about a glyph
*/
/**
- * PangoGlyphGeometry:
+ * Pango2GlyphGeometry:
* @width: the logical width to use for the the character.
* @x_offset: horizontal offset from nominal character position.
* @y_offset: vertical offset from nominal character position.
*
- * The `PangoGlyphGeometry` structure contains width and positioning
+ * The `Pango2GlyphGeometry` structure contains width and positioning
* information for a single glyph.
*
* Note that @width is not guaranteed to be the same as the glyph
@@ -72,21 +72,21 @@ typedef gint32 PangoGlyphUnit;
* 3. Advance the current point to (x + width, y)
* 4. Render the next glyph
*/
-struct _PangoGlyphGeometry
+struct _Pango2GlyphGeometry
{
- PangoGlyphUnit width;
- PangoGlyphUnit x_offset;
- PangoGlyphUnit y_offset;
+ Pango2GlyphUnit width;
+ Pango2GlyphUnit x_offset;
+ Pango2GlyphUnit y_offset;
};
/* Visual attributes of a glyph
*/
/**
- * PangoGlyphVisAttr:
+ * Pango2GlyphVisAttr:
* @is_cluster_start: set for the first logical glyph in each cluster.
* @is_color: set if the the font will render this glyph with color. Since 1.50
*
- * A `PangoGlyphVisAttr` structure communicates information between
+ * A `Pango2GlyphVisAttr` structure communicates information between
* the shaping and rendering phases.
*
* Currently, it contains cluster start and color information.
@@ -97,7 +97,7 @@ struct _PangoGlyphGeometry
* that is, in Arabic text, accent glyphs follow the glyphs for the
* base character.
*/
-struct _PangoGlyphVisAttr
+struct _Pango2GlyphVisAttr
{
guint is_cluster_start : 1;
guint is_color : 1;
@@ -106,192 +106,192 @@ struct _PangoGlyphVisAttr
/* A single glyph
*/
/**
- * PangoGlyphInfo:
+ * Pango2GlyphInfo:
* @glyph: the glyph itself.
* @geometry: the positional information about the glyph.
* @attr: the visual attributes of the glyph.
*
- * A `PangoGlyphInfo` structure represents a single glyph with
+ * A `Pango2GlyphInfo` structure represents a single glyph with
* positioning information and visual attributes.
*/
-struct _PangoGlyphInfo
+struct _Pango2GlyphInfo
{
- PangoGlyph glyph;
- PangoGlyphGeometry geometry;
- PangoGlyphVisAttr attr;
+ Pango2Glyph glyph;
+ Pango2GlyphGeometry geometry;
+ Pango2GlyphVisAttr attr;
};
/**
- * PangoGlyphString:
+ * Pango2GlyphString:
* @num_glyphs: number of glyphs in this glyph string
* @glyphs: (array length=num_glyphs): array of glyph information
* @log_clusters: logical cluster info, indexed by the byte index
* within the text corresponding to the glyph string
*
- * A `PangoGlyphString` is used to store strings of glyphs with geometry
+ * A `Pango2GlyphString` is used to store strings of glyphs with geometry
* and visual attribute information.
*
* The storage for the glyph information is owned by the structure
* which simplifies memory management.
*/
-struct _PangoGlyphString {
+struct _Pango2GlyphString {
int num_glyphs;
- PangoGlyphInfo *glyphs;
+ Pango2GlyphInfo *glyphs;
int *log_clusters;
/*< private >*/
int space;
};
-#define PANGO_TYPE_GLYPH_STRING (pango_glyph_string_get_type ())
-
-PANGO_AVAILABLE_IN_ALL
-GType pango_glyph_string_get_type (void) G_GNUC_CONST;
-
-PANGO_AVAILABLE_IN_ALL
-PangoGlyphString * pango_glyph_string_new (void);
-PANGO_AVAILABLE_IN_ALL
-void pango_glyph_string_set_size (PangoGlyphString *string,
- int new_len);
-
-PANGO_AVAILABLE_IN_ALL
-PangoGlyphString * pango_glyph_string_copy (PangoGlyphString *string);
-PANGO_AVAILABLE_IN_ALL
-void pango_glyph_string_free (PangoGlyphString *string);
-
-PANGO_AVAILABLE_IN_ALL
-void pango_glyph_string_extents (PangoGlyphString *glyphs,
- PangoFont *font,
- PangoRectangle *ink_rect,
- PangoRectangle *logical_rect);
-PANGO_AVAILABLE_IN_ALL
-int pango_glyph_string_get_width (PangoGlyphString *glyphs);
-
-PANGO_AVAILABLE_IN_ALL
-void pango_glyph_string_extents_range (PangoGlyphString *glyphs,
- int start,
- int end,
- PangoFont *font,
- PangoRectangle *ink_rect,
- PangoRectangle *logical_rect);
-
-PANGO_AVAILABLE_IN_ALL
-void pango_glyph_string_get_logical_widths (PangoGlyphString *glyphs,
- const char *text,
- int length,
- int embedding_level,
- int *logical_widths);
-
-PANGO_AVAILABLE_IN_ALL
-void pango_glyph_string_index_to_x (PangoGlyphString *glyphs,
- const char *text,
- int length,
- const PangoAnalysis *analysis,
- int index_,
- gboolean trailing,
- int *x_pos);
-PANGO_AVAILABLE_IN_ALL
-void pango_glyph_string_x_to_index (PangoGlyphString *glyphs,
- const char *text,
- int length,
- const PangoAnalysis *analysis,
- int x_pos,
- int *index_,
- int *trailing);
-
-PANGO_AVAILABLE_IN_ALL
-void pango_glyph_string_index_to_x_full (PangoGlyphString *glyphs,
- const char *text,
- int length,
- const PangoAnalysis *analysis,
- PangoLogAttr *attrs,
- int index_,
- gboolean trailing,
- int *x_pos);
-
-G_DEFINE_AUTOPTR_CLEANUP_FUNC(PangoGlyphString, pango_glyph_string_free)
+#define PANGO2_TYPE_GLYPH_STRING (pango2_glyph_string_get_type ())
+
+PANGO2_AVAILABLE_IN_ALL
+GType pango2_glyph_string_get_type (void) G_GNUC_CONST;
+
+PANGO2_AVAILABLE_IN_ALL
+Pango2GlyphString * pango2_glyph_string_new (void);
+PANGO2_AVAILABLE_IN_ALL
+void pango2_glyph_string_set_size (Pango2GlyphString *string,
+ int new_len);
+
+PANGO2_AVAILABLE_IN_ALL
+Pango2GlyphString * pango2_glyph_string_copy (Pango2GlyphString *string);
+PANGO2_AVAILABLE_IN_ALL
+void pango2_glyph_string_free (Pango2GlyphString *string);
+
+PANGO2_AVAILABLE_IN_ALL
+void pango2_glyph_string_extents (Pango2GlyphString *glyphs,
+ Pango2Font *font,
+ Pango2Rectangle *ink_rect,
+ Pango2Rectangle *logical_rect);
+PANGO2_AVAILABLE_IN_ALL
+int pango2_glyph_string_get_width (Pango2GlyphString *glyphs);
+
+PANGO2_AVAILABLE_IN_ALL
+void pango2_glyph_string_extents_range (Pango2GlyphString *glyphs,
+ int start,
+ int end,
+ Pango2Font *font,
+ Pango2Rectangle *ink_rect,
+ Pango2Rectangle *logical_rect);
+
+PANGO2_AVAILABLE_IN_ALL
+void pango2_glyph_string_get_logical_widths (Pango2GlyphString *glyphs,
+ const char *text,
+ int length,
+ int embedding_level,
+ int *logical_widths);
+
+PANGO2_AVAILABLE_IN_ALL
+void pango2_glyph_string_index_to_x (Pango2GlyphString *glyphs,
+ const char *text,
+ int length,
+ const Pango2Analysis *analysis,
+ int index_,
+ gboolean trailing,
+ int *x_pos);
+PANGO2_AVAILABLE_IN_ALL
+void pango2_glyph_string_x_to_index (Pango2GlyphString *glyphs,
+ const char *text,
+ int length,
+ const Pango2Analysis *analysis,
+ int x_pos,
+ int *index_,
+ int *trailing);
+
+PANGO2_AVAILABLE_IN_ALL
+void pango2_glyph_string_index_to_x_full (Pango2GlyphString *glyphs,
+ const char *text,
+ int length,
+ const Pango2Analysis *analysis,
+ Pango2LogAttr *attrs,
+ int index_,
+ gboolean trailing,
+ int *x_pos);
+
+G_DEFINE_AUTOPTR_CLEANUP_FUNC(Pango2GlyphString, pango2_glyph_string_free)
/* Shaping */
/**
- * PangoShapeFlags:
- * @PANGO_SHAPE_NONE: Default value
- * @PANGO_SHAPE_ROUND_POSITIONS: Round glyph positions and widths to whole device units
+ * Pango2ShapeFlags:
+ * @PANGO2_SHAPE_NONE: Default value
+ * @PANGO2_SHAPE_ROUND_POSITIONS: Round glyph positions and widths to whole device units
* This option should be set if the target renderer can't do subpixel positioning of glyphs
*
- * `PangoShapeFlags` influence the shaping process.
+ * `Pango2ShapeFlags` influence the shaping process.
*
- * These flags can be passed to [func@Pango.shape].
+ * These flags can be passed to [func@Pango2.shape].
*/
typedef enum {
- PANGO_SHAPE_NONE = 0,
- PANGO_SHAPE_ROUND_POSITIONS = 1 << 0,
-} PangoShapeFlags;
+ PANGO2_SHAPE_NONE = 0,
+ PANGO2_SHAPE_ROUND_POSITIONS = 1 << 0,
+} Pango2ShapeFlags;
-PANGO_AVAILABLE_IN_ALL
-void pango_shape (const char *item_text,
+PANGO2_AVAILABLE_IN_ALL
+void pango2_shape (const char *item_text,
int item_length,
const char *paragraph_text,
int paragraph_length,
- const PangoAnalysis *analysis,
- PangoGlyphString *glyphs,
- PangoShapeFlags flags);
+ const Pango2Analysis *analysis,
+ Pango2GlyphString *glyphs,
+ Pango2ShapeFlags flags);
-PANGO_AVAILABLE_IN_ALL
-void pango_shape_item (PangoItem *item,
+PANGO2_AVAILABLE_IN_ALL
+void pango2_shape_item (Pango2Item *item,
const char *paragraph_text,
int paragraph_length,
- PangoLogAttr *log_attrs,
- PangoGlyphString *glyphs,
- PangoShapeFlags flags);
+ Pango2LogAttr *log_attrs,
+ Pango2GlyphString *glyphs,
+ Pango2ShapeFlags flags);
/**
- * PANGO_GLYPH_EMPTY:
+ * PANGO2_GLYPH_EMPTY:
*
- * A `PangoGlyph` value that indicates a zero-width empty glpyh.
+ * A `Pango2Glyph` value that indicates a zero-width empty glpyh.
*
* This is useful for example in shaper modules, to use as the glyph for
* various zero-width Unicode characters (those passing [func@is_zero_width]).
*/
-#define PANGO_GLYPH_EMPTY ((PangoGlyph)0x0FFFFFFF)
+#define PANGO2_GLYPH_EMPTY ((Pango2Glyph)0x0FFFFFFF)
/**
- * PANGO_GLYPH_INVALID_INPUT:
+ * PANGO2_GLYPH_INVALID_INPUT:
*
- * A `PangoGlyph` value for invalid input.
+ * A `Pango2Glyph` value for invalid input.
*
- * `PangoLayout` produces one such glyph per invalid input UTF-8 byte and such
+ * `Pango2Layout` produces one such glyph per invalid input UTF-8 byte and such
* a glyph is rendered as a crossed box.
*
- * Note that this value is defined such that it has the %PANGO_GLYPH_UNKNOWN_FLAG
+ * Note that this value is defined such that it has the %PANGO2_GLYPH_UNKNOWN_FLAG
* set.
*/
-#define PANGO_GLYPH_INVALID_INPUT ((PangoGlyph)0xFFFFFFFF)
+#define PANGO2_GLYPH_INVALID_INPUT ((Pango2Glyph)0xFFFFFFFF)
/**
- * PANGO_GLYPH_UNKNOWN_FLAG:
+ * PANGO2_GLYPH_UNKNOWN_FLAG:
*
- * Flag used in `PangoGlyph` to turn a `gunichar` value of a valid Unicode
+ * Flag used in `Pango2Glyph` to turn a `gunichar` value of a valid Unicode
* character into an unknown-character glyph for that `gunichar`.
*
* Such unknown-character glyphs may be rendered as a 'hex box'.
*/
-#define PANGO_GLYPH_UNKNOWN_FLAG ((PangoGlyph)0x10000000)
+#define PANGO2_GLYPH_UNKNOWN_FLAG ((Pango2Glyph)0x10000000)
/**
- * PANGO_GET_UNKNOWN_GLYPH:
+ * PANGO2_GET_UNKNOWN_GLYPH:
* @wc: a Unicode character
*
* The way this unknown glyphs are rendered is backend specific. For example,
* a box with the hexadecimal Unicode code-point of the character written in it
* is what is done in the most common backends.
*
- * Returns: a `PangoGlyph` value that means no glyph was found for @wc.
+ * Returns: a `Pango2Glyph` value that means no glyph was found for @wc.
*/
-#define PANGO_GET_UNKNOWN_GLYPH(wc) ((PangoGlyph)(wc)|PANGO_GLYPH_UNKNOWN_FLAG)
+#define PANGO2_GET_UNKNOWN_GLYPH(wc) ((Pango2Glyph)(wc)|PANGO2_GLYPH_UNKNOWN_FLAG)
G_END_DECLS