21#ifndef __GTK_SOURCE_TAG_H__
22#define __GTK_SOURCE_TAG_H__
26#include <gtk/gtktexttag.h>
30#define GTK_TYPE_SYNTAX_TAG (gtk_syntax_tag_get_type ())
31#define GTK_SYNTAX_TAG(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), GTK_TYPE_SYNTAX_TAG, GtkSyntaxTag))
32#define GTK_SYNTAX_TAG_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), GTK_TYPE_SYNTAX_TAG, GtkSyntaxTagClass))
33#define GTK_IS_SYNTAX_TAG(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), GTK_TYPE_SYNTAX_TAG))
34#define GTK_IS_SYNTAX_TAG_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), GTK_TYPE_SYNTAX_TAG))
35#define GTK_SYNTAX_TAG_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), GTK_TYPE_SYNTAX_TAG, GtkSyntaxTagClass))
37#define GTK_TYPE_PATTERN_TAG (gtk_pattern_tag_get_type ())
38#define GTK_PATTERN_TAG(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), GTK_TYPE_PATTERN_TAG, GtkPatternTag))
39#define GTK_PATTERN_TAG_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), GTK_TYPE_PATTERN_TAG, GtkPatternTagClass))
40#define GTK_IS_PATTERN_TAG(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), GTK_TYPE_PATTERN_TAG))
41#define GTK_IS_PATTERN_TAG_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), GTK_TYPE_PATTERN_TAG))
42#define GTK_PATTERN_TAG_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), GTK_TYPE_PATTERN_TAG, GtkPatternTagClass))
44#define GTK_TYPE_EMBEDDED_TAG (gtk_embedded_tag_get_type ())
45#define GTK_EMBEDDED_TAG(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), GTK_TYPE_EMBEDDED_TAG, GtkEmbeddedTag))
46#define GTK_EMBEDDED_TAG_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), GTK_TYPE_EMBEDDED_TAG, GtkEmbeddedTagClass))
47#define GTK_IS_EMBEDDED_TAG(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), GTK_TYPE_EMBEDDED_TAG))
48#define GTK_IS_EMBEDDED_TAG_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), GTK_TYPE_EMBEDDED_TAG))
49#define GTK_EMBEDDED_TAG_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), GTK_TYPE_EMBEDDED_TAG, GtkEmbeddedTagClass))
51typedef struct _GtkSourceBufferMatch
59typedef struct _Regex {
60 struct re_pattern_buffer buf;
61 struct re_registers reg;
65typedef struct _GtkSyntaxTag GtkSyntaxTag;
66typedef struct _GtkSyntaxTagClass GtkSyntaxTagClass;
67typedef struct _GtkPatternTag GtkPatternTag;
68typedef struct _GtkPatternTagClass GtkPatternTagClass;
69typedef struct _GtkEmbeddedTag GtkEmbeddedTag;
70typedef struct _GtkEmbeddedTagClass GtkEmbeddedTagClass;
73 GtkTextTag parent_instance;
79struct _GtkSyntaxTagClass {
80 GtkTextTagClass parent_class;
83struct _GtkPatternTag {
84 GtkTextTag parent_instance;
88struct _GtkPatternTagClass {
89 GtkTextTagClass parent_class;
92struct _GtkEmbeddedTag {
93 GtkTextTag parent_instance;
98struct _GtkEmbeddedTagClass {
99 GtkTextTagClass parent_class;
103GType gtk_syntax_tag_get_type(
void) G_GNUC_CONST;
104GtkTextTag* gtk_syntax_tag_new(
const gchar *name,
const gchar *patternstart,
105 const gchar *patternend);
107GType gtk_pattern_tag_get_type(
void) G_GNUC_CONST;
108GtkTextTag* gtk_pattern_tag_new(
const gchar *name,
const gchar *pattern);
110GType gtk_embedded_tag_get_type(
void) G_GNUC_CONST;
111GtkTextTag* gtk_embedded_tag_new(
const gchar *name,
const gchar *outside,
112 const gchar *inside);
114gboolean gtk_source_compile_regex (
const gchar *pattern, Regex *regex);