GTK+ Reference Manual | |||
---|---|---|---|
<<< Previous Page | Home | Up | Next Page >>> |
#include <gtk/gtk.h> struct GtkTextTag; struct GtkTextBTreeNode; struct GtkTextTagTable; enum GtkWrapMode; struct GtkTextAttributes; GtkTextTag* gtk_text_tag_new (const gchar *name); gint gtk_text_tag_get_priority (GtkTextTag *tag); void gtk_text_tag_set_priority (GtkTextTag *tag, gint priority); gint gtk_text_tag_event (GtkTextTag *tag, GObject *event_object, GdkEvent *event, const GtkTextIter *iter); struct GtkTextAppearance; GtkTextAttributes* gtk_text_attributes_new (void); void gtk_text_attributes_copy (GtkTextAttributes *src, GtkTextAttributes *dest); void gtk_text_attributes_unref (GtkTextAttributes *values); void gtk_text_attributes_ref (GtkTextAttributes *values); |
"event" gint user_function (GtkTextTag *texttag, GObject arg1, GdkEvent *event, GtkTextIter arg2, gpointer user_data); |
You may wish to begin by reading the text widget conceptual overview which gives an overview of all the objects and data types related to the text widget and how they work together.
typedef enum { GTK_WRAPMODE_NONE, GTK_WRAPMODE_CHAR, GTK_WRAPMODE_WORD } GtkWrapMode; |
Describes a type of line wrapping.
GTK_WRAPMODE_NONE | don't wrap lines; just use scrollbars |
GTK_WRAPMODE_CHAR | allow line breaks between any two characters |
GTK_WRAPMODE_WORD | allow line breaks only between words |
struct GtkTextAttributes { guint refcount; GtkTextAppearance appearance; GtkJustification justify; GtkTextDirection direction; PangoFontDescription *font_desc; /* lMargin1 */ gint left_margin; /* lMargin2 */ gint left_wrapped_line_margin; /* super/subscript offset, can be negative */ gint offset; gint right_margin; gint pixels_above_lines; gint pixels_below_lines; gint pixels_inside_wrap; PangoTabArray *tabs; GtkWrapMode wrap_mode; /* How to handle wrap-around for this tag. * Must be GTK_WRAPMODE_CHAR, * GTK_WRAPMODE_NONE, GTK_WRAPMODE_WORD */ gchar *language; /* hide the text */ guint invisible : 1; /* Background is fit to full line height rather than * baseline +/- ascent/descent (font height) */ guint bg_full_height : 1; /* can edit this text */ guint editable : 1; /* colors are allocated etc. */ guint realized : 1; guint pad1 : 1; guint pad2 : 1; guint pad3 : 1; guint pad4 : 1; }; |
GtkTextTag* gtk_text_tag_new (const gchar *name); |
Creates a GtkTextTag. Configure the tag using object arguments, i.e. using g_object_set().
name : | tag name, or NULL |
Returns : | a new GtkTextTag |
gint gtk_text_tag_get_priority (GtkTextTag *tag); |
Get the tag priority.
tag : | a GtkTextTag |
Returns : | The tag's priority. |
void gtk_text_tag_set_priority (GtkTextTag *tag, gint priority); |
Sets the priority of a GtkTextTag. Valid priorities are start at 0 and go to one less than gtk_text_tag_table_size(). Each tag in a table has a unique priority; setting the priority of one tag shifts the priorities of all the other tags in the table to maintain a unique priority for each tag. Higher priority tags "win" if two tags both set the same text attribute. When adding a tag to a tag table, it will be assigned the highest priority in the table by default; so normally the precedence of a set of tags is the order in which they were added to the table, or created with gtk_text_buffer_create_tag(), which adds the tag to the buffer's table automatically.
tag : | a GtkTextTag |
priority : | the new priority |
gint gtk_text_tag_event (GtkTextTag *tag, GObject *event_object, GdkEvent *event, const GtkTextIter *iter); |
Emits the "event" signal on the GtkTextTag.
tag : | a GtkTextTag |
event_object : | object that received the event, such as a widget |
event : | the event |
iter : | location where the event was received |
Returns : | result of signal emission (whether the event was handled) |
struct GtkTextAppearance { GdkColor bg_color; GdkColor fg_color; GdkBitmap *bg_stipple; GdkBitmap *fg_stipple; guint underline : 4; /* PangoUnderline */ guint strikethrough : 1; /* Whether to use background-related values; this is irrelevant for * the values struct when in a tag, but is used for the composite * values struct; it's true if any of the tags being composited * had background stuff set. */ guint draw_bg : 1; /* This is only used when we are actually laying out and rendering * a paragraph; not when a GtkTextAppearance is part of a * GtkTextAttributes. */ guint inside_selection : 1; }; |
GtkTextAttributes* gtk_text_attributes_new (void); |
Creates a GtkTextAttributes, which describes a set of properties on some text.
Returns : | a new GtkTextAttributes |
void gtk_text_attributes_copy (GtkTextAttributes *src, GtkTextAttributes *dest); |
src : | |
dest : |
Name of the tag, or NULL for anonymous tags. Can only be set when the tag is created.
Background color, as a string such as "red" or "FFFFFF"
Background color, as a GdkColor.
Whether to make the background color for each character the height of the highest font used on the current line, or the height of the font used for the current character.
A GdkBitmap to use for stippling the background color.
The GtkTextDirection for the tagged text.
Whether the user can modify the tagged text.
Font as a Pango font name, e.g. "Sans Italic 12"
Font as a PangoFontDescription.
Foreground color as a string such as "red" or "FFFFFF".
Foreground color as a GdkColor.
A GdkBitmap to use as a stipple pattern for the foreground.
A GtkJustification for the text. This is only used when the tag is applied to the first character in a paragraph.
The language this text is in, as an ISO code. Pango can use this as a hint when rendering the text. If you don't understand this argument, you probably don't need it.
Pixel width of left margin of the text.
Pixel width of the left margin of the text for lines after the first line in a wrapped paragraph.
Pixels to offset the text horizontally or vertically, useful to produce superscript and subscript.
Pixels of blank space to leave above each newline-terminated line.
Pixels of blank space to leave below each newline-terminated line.
Pixels of blank space to leave between wrapped lines inside the same newline-terminated line (paragraph).
Pixel width of right margin.
TRUE to draw a line through the text.
A PangoUnderline value.
A GtkWrapMode value. Only used if the tag applies to the first character in a paragraph.
A PangoTabArray indicating tabs for this text. Only used if the tag applies to the first character in a paragraph.
gint user_function (GtkTextTag *texttag, GObject arg1, GdkEvent *event, GtkTextIter arg2, gpointer user_data); |
texttag : | the object which received the signal. |
arg1 : | |
event : | |
arg2 : | |
user_data : | user data set when the signal handler was connected. |
Returns : |