]> Pileus Git - ~andy/gtk/blob - gtk/gtktexttagtable.h
Rename from gtk_text_tag_table_size(). (#59366)
[~andy/gtk] / gtk / gtktexttagtable.h
1 #ifndef GTK_TEXT_TAG_TABLE_H
2 #define GTK_TEXT_TAG_TABLE_H
3
4 #include <gtk/gtktexttag.h>
5
6 #ifdef __cplusplus
7 extern "C" {
8 #endif /* __cplusplus */
9
10 #include <gtk/gtktexttag.h>
11
12 typedef void (* GtkTextTagTableForeach) (GtkTextTag *tag, gpointer data);
13
14 #define GTK_TYPE_TEXT_TAG_TABLE            (gtk_text_tag_table_get_type ())
15 #define GTK_TEXT_TAG_TABLE(obj)            (G_TYPE_CHECK_INSTANCE_CAST ((obj), GTK_TYPE_TEXT_TAG_TABLE, GtkTextTagTable))
16 #define GTK_TEXT_TAG_TABLE_CLASS(klass)    (G_TYPE_CHECK_CLASS_CAST ((klass), GTK_TYPE_TEXT_TAG_TABLE, GtkTextTagTableClass))
17 #define GTK_IS_TEXT_TAG_TABLE(obj)         (G_TYPE_CHECK_INSTANCE_TYPE ((obj), GTK_TYPE_TEXT_TAG_TABLE))
18 #define GTK_IS_TEXT_TAG_TABLE_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), GTK_TYPE_TEXT_TAG_TABLE))
19 #define GTK_TEXT_TAG_TABLE_GET_CLASS(obj)  (G_TYPE_INSTANCE_GET_CLASS ((obj), GTK_TYPE_TEXT_TAG_TABLE, GtkTextTagTableClass))
20
21 typedef struct _GtkTextTagTableClass GtkTextTagTableClass;
22
23 struct _GtkTextTagTable {
24   GObject parent_instance;
25
26   GHashTable *hash;
27   GSList *anonymous;
28   gint anon_count;
29 };
30
31 struct _GtkTextTagTableClass {
32   GObjectClass parent_class;
33
34   void (* tag_changed) (GtkTextTagTable *table, GtkTextTag *tag, gboolean size_changed);
35   void (* tag_added) (GtkTextTagTable *table, GtkTextTag *tag);
36   void (* tag_removed) (GtkTextTagTable *table, GtkTextTag *tag);
37 };
38
39 GType          gtk_text_tag_table_get_type (void) G_GNUC_CONST;
40
41 GtkTextTagTable *gtk_text_tag_table_new      (void);
42 void             gtk_text_tag_table_add      (GtkTextTagTable        *table,
43                                               GtkTextTag             *tag);
44 void             gtk_text_tag_table_remove   (GtkTextTagTable        *table,
45                                               GtkTextTag             *tag);
46 GtkTextTag      *gtk_text_tag_table_lookup   (GtkTextTagTable        *table,
47                                               const gchar            *name);
48 void             gtk_text_tag_table_foreach  (GtkTextTagTable        *table,
49                                               GtkTextTagTableForeach  func,
50                                               gpointer                data);
51 gint             gtk_text_tag_table_get_size (GtkTextTagTable        *table);
52
53
54 #ifdef __cplusplus
55 }
56 #endif /* __cplusplus */
57
58 #endif
59