Mercurial > pidgin
annotate finch/libgnt/gntbindable.h @ 17044:53e757c37e06
Ignore bold, underline and other formatting type things in SPAN tags if
"Show formatting on incoming messages" is turned off. This makes handling
of these things consistent with other formatting tags.
Fixes #520.
author | Stu Tomlinson <stu@nosnilmot.com> |
---|---|
date | Fri, 11 May 2007 20:06:57 +0000 |
parents | 5187395d6b78 |
children | 8410511f4dbb |
rev | line source |
---|---|
15817 | 1 #ifndef GNT_BINDABLE_H |
2 #define GNT_BINDABLE_H | |
3 | |
4 #include <stdio.h> | |
5 #include <glib.h> | |
6 #include <glib-object.h> | |
7 #include <ncurses.h> | |
8 | |
9 #define GNT_TYPE_BINDABLE (gnt_bindable_get_gtype()) | |
10 #define GNT_BINDABLE(obj) (G_TYPE_CHECK_INSTANCE_CAST((obj), GNT_TYPE_BINDABLE, GntBindable)) | |
11 #define GNT_BINDABLE_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST((klass), GNT_TYPE_BINDABLE, GntBindableClass)) | |
12 #define GNT_IS_BINDABLE(obj) (G_TYPE_CHECK_INSTANCE_TYPE((obj), GNT_TYPE_BINDABLE)) | |
13 #define GNT_IS_BINDABLE_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE((klass), GNT_TYPE_BINDABLE)) | |
14 #define GNT_BINDABLE_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS((obj), GNT_TYPE_BINDABLE, GntBindableClass)) | |
15 | |
16283
5187395d6b78
Debug is not necessary anymore, and don't crash on null text.
Sadrul Habib Chowdhury <imadil@gmail.com>
parents:
15928
diff
changeset
|
16 #define GNTDEBUG |
15817 | 17 |
15928
f00f2e283ffb
Some define changes. This helps in generating the python bindings.
Sadrul Habib Chowdhury <imadil@gmail.com>
parents:
15817
diff
changeset
|
18 typedef struct _GntBindable GntBindable; |
f00f2e283ffb
Some define changes. This helps in generating the python bindings.
Sadrul Habib Chowdhury <imadil@gmail.com>
parents:
15817
diff
changeset
|
19 typedef struct _GntBindableClass GntBindableClass; |
15817 | 20 |
15928
f00f2e283ffb
Some define changes. This helps in generating the python bindings.
Sadrul Habib Chowdhury <imadil@gmail.com>
parents:
15817
diff
changeset
|
21 struct _GntBindable |
15817 | 22 { |
23 GObject inherit; | |
24 }; | |
25 | |
15928
f00f2e283ffb
Some define changes. This helps in generating the python bindings.
Sadrul Habib Chowdhury <imadil@gmail.com>
parents:
15817
diff
changeset
|
26 struct _GntBindableClass |
15817 | 27 { |
28 GObjectClass parent; | |
29 | |
30 GHashTable *remaps; /* Key remaps */ | |
31 GHashTable *actions; /* name -> Action */ | |
32 GHashTable *bindings; /* key -> ActionParam */ | |
33 | |
34 void (*gnt_reserved1)(void); | |
35 void (*gnt_reserved2)(void); | |
36 void (*gnt_reserved3)(void); | |
37 void (*gnt_reserved4)(void); | |
38 }; | |
39 | |
40 G_BEGIN_DECLS | |
41 | |
42 GType gnt_bindable_get_gtype(void); | |
43 | |
44 /******************/ | |
45 /* Key Remaps */ | |
46 /******************/ | |
47 const char * gnt_bindable_remap_keys(GntBindable *bindable, const char *text); | |
48 | |
49 /******************/ | |
50 /* Bindable Actions */ | |
51 /******************/ | |
52 typedef gboolean (*GntBindableActionCallback) (GntBindable *bindable, GList *params); | |
53 typedef gboolean (*GntBindableActionCallbackNoParam)(GntBindable *bindable); | |
54 | |
15928
f00f2e283ffb
Some define changes. This helps in generating the python bindings.
Sadrul Habib Chowdhury <imadil@gmail.com>
parents:
15817
diff
changeset
|
55 typedef struct _GntBindableAction GntBindableAction; |
f00f2e283ffb
Some define changes. This helps in generating the python bindings.
Sadrul Habib Chowdhury <imadil@gmail.com>
parents:
15817
diff
changeset
|
56 typedef struct _GntBindableActionParam GntBindableActionParam; |
15817 | 57 |
15928
f00f2e283ffb
Some define changes. This helps in generating the python bindings.
Sadrul Habib Chowdhury <imadil@gmail.com>
parents:
15817
diff
changeset
|
58 struct _GntBindableAction |
15817 | 59 { |
60 char *name; /* The name of the action */ | |
61 union { | |
62 gboolean (*action)(GntBindable *bindable, GList *params); | |
63 gboolean (*action_noparam)(GntBindable *bindable); | |
64 } u; | |
65 }; | |
66 | |
15928
f00f2e283ffb
Some define changes. This helps in generating the python bindings.
Sadrul Habib Chowdhury <imadil@gmail.com>
parents:
15817
diff
changeset
|
67 struct _GntBindableActionParam |
15817 | 68 { |
69 GntBindableAction *action; | |
70 GList *list; | |
71 }; | |
72 | |
73 | |
74 /*GntBindableAction *gnt_bindable_action_parse(const char *name);*/ | |
75 | |
76 void gnt_bindable_action_free(GntBindableAction *action); | |
77 void gnt_bindable_action_param_free(GntBindableActionParam *param); | |
78 | |
79 void gnt_bindable_class_register_action(GntBindableClass *klass, const char *name, | |
80 GntBindableActionCallback callback, const char *trigger, ...); | |
81 void gnt_bindable_register_binding(GntBindableClass *klass, const char *name, | |
82 const char *trigger, ...); | |
83 | |
84 gboolean gnt_bindable_perform_action_key(GntBindable *bindable, const char *keys); | |
85 gboolean gnt_bindable_perform_action_named(GntBindable *bindable, const char *name, ...); | |
86 | |
87 G_END_DECLS | |
88 | |
89 #endif /* GNT_BINDABLE_H */ | |
90 |