pidgin/gtkimhtml.h

Fri, 25 May 2007 21:53:49 +0000

author
Sean Egan <seanegan@pidgin.im>
date
Fri, 25 May 2007 21:53:49 +0000
branch
release-2.1.0
changeset 17880
5e73968467e0
parent 16385
aa5b9456e258
child 18105
bab0b0bcb664
permissions
-rw-r--r--

Undo/Redo in GtkImHtml from GtkSourceView. This may not be adaquate enough for us.

5034
077678f7b048 [gaim-migrate @ 5377]
Christian Hammond <chipx86@chipx86.com>
parents: 5012
diff changeset
1 /**
5967
df8268ccde45 [gaim-migrate @ 6414]
Mark Doliner <markdoliner@pidgin.im>
parents: 5537
diff changeset
2 * @file gtkimhtml.h GTK+ IM/HTML rendering component
16254
eeb2bba4dc94 Rename the Doxygen group from gtkui to pidgin.
Richard Laager <rlaager@pidgin.im>
parents: 15572
diff changeset
3 * @ingroup pidgin
1428
c14bab2b74bb [gaim-migrate @ 1438]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
diff changeset
4 *
15572
e069b22c1fc4 headers to pidgin
Sean Egan <seanegan@pidgin.im>
parents: 15562
diff changeset
5 * Pidgin is the legal property of its developers, whose names are too numerous
8046
c581b20a47d6 [gaim-migrate @ 8730]
Sean Egan <seanegan@pidgin.im>
parents: 7988
diff changeset
6 * to list here. Please refer to the COPYRIGHT file distributed with this
c581b20a47d6 [gaim-migrate @ 8730]
Sean Egan <seanegan@pidgin.im>
parents: 7988
diff changeset
7 * source distribution.
1428
c14bab2b74bb [gaim-migrate @ 1438]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
diff changeset
8 *
c14bab2b74bb [gaim-migrate @ 1438]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
diff changeset
9 * This program is free software; you can redistribute it and/or modify
c14bab2b74bb [gaim-migrate @ 1438]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
diff changeset
10 * under the terms of the GNU General Public License as published by
c14bab2b74bb [gaim-migrate @ 1438]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
diff changeset
11 * the Free Software Foundation; either version 2 of the License, or
c14bab2b74bb [gaim-migrate @ 1438]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
diff changeset
12 * (at your option) any later version.
c14bab2b74bb [gaim-migrate @ 1438]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
diff changeset
13 *
c14bab2b74bb [gaim-migrate @ 1438]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
diff changeset
14 * This program is distributed in the hope that it will be useful,
c14bab2b74bb [gaim-migrate @ 1438]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
diff changeset
15 * but WITHOUT ANY WARRANTY; without even the implied warranty of
c14bab2b74bb [gaim-migrate @ 1438]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
diff changeset
16 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
c14bab2b74bb [gaim-migrate @ 1438]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
diff changeset
17 * GNU General Public License for more details.
c14bab2b74bb [gaim-migrate @ 1438]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
diff changeset
18 *
c14bab2b74bb [gaim-migrate @ 1438]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
diff changeset
19 * You should have received a copy of the GNU General Public License
c14bab2b74bb [gaim-migrate @ 1438]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
diff changeset
20 * along with this program; if not, write to the Free Software
c14bab2b74bb [gaim-migrate @ 1438]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
diff changeset
21 * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
c14bab2b74bb [gaim-migrate @ 1438]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
diff changeset
22 */
15562
8c8249fe5e3c gaim_gtk to pidgin. I hope
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
23 #ifndef _PIDGINIMHTML_H_
8c8249fe5e3c gaim_gtk to pidgin. I hope
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
24 #define _PIDGINIMHTML_H_
1428
c14bab2b74bb [gaim-migrate @ 1438]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
diff changeset
25
c14bab2b74bb [gaim-migrate @ 1438]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
diff changeset
26 #include <gdk/gdk.h>
3922
61808e62e68e [gaim-migrate @ 4094]
Sean Egan <seanegan@pidgin.im>
parents: 3867
diff changeset
27 #include <gtk/gtktextview.h>
4735
ac5f2489f6ee [gaim-migrate @ 5050]
Ka-Hing Cheung <khc@pidgin.im>
parents: 4371
diff changeset
28 #include <gtk/gtktooltips.h>
5012
a6e5bbd44d89 [gaim-migrate @ 5348]
Ka-Hing Cheung <khc@pidgin.im>
parents: 4947
diff changeset
29 #include <gtk/gtkimage.h>
17880
5e73968467e0 Undo/Redo in GtkImHtml from GtkSourceView. This may not be adaquate enough for us.
Sean Egan <seanegan@pidgin.im>
parents: 16385
diff changeset
30 #include "gtksourceundomanager.h"
1428
c14bab2b74bb [gaim-migrate @ 1438]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
diff changeset
31
c14bab2b74bb [gaim-migrate @ 1438]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
diff changeset
32 #ifdef __cplusplus
c14bab2b74bb [gaim-migrate @ 1438]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
diff changeset
33 extern "C" {
c14bab2b74bb [gaim-migrate @ 1438]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
diff changeset
34 #endif
c14bab2b74bb [gaim-migrate @ 1438]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
diff changeset
35
9033
5095532375ba [gaim-migrate @ 9809]
Kevin Stange <kstange@pidgin.im>
parents: 9029
diff changeset
36 /**************************************************************************
5095532375ba [gaim-migrate @ 9809]
Kevin Stange <kstange@pidgin.im>
parents: 9029
diff changeset
37 * @name Structures
5095532375ba [gaim-migrate @ 9809]
Kevin Stange <kstange@pidgin.im>
parents: 9029
diff changeset
38 **************************************************************************/
5095532375ba [gaim-migrate @ 9809]
Kevin Stange <kstange@pidgin.im>
parents: 9029
diff changeset
39 /*@{*/
5095532375ba [gaim-migrate @ 9809]
Kevin Stange <kstange@pidgin.im>
parents: 9029
diff changeset
40
1428
c14bab2b74bb [gaim-migrate @ 1438]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
diff changeset
41 #define GTK_TYPE_IMHTML (gtk_imhtml_get_type ())
c14bab2b74bb [gaim-migrate @ 1438]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
diff changeset
42 #define GTK_IMHTML(obj) (GTK_CHECK_CAST ((obj), GTK_TYPE_IMHTML, GtkIMHtml))
c14bab2b74bb [gaim-migrate @ 1438]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
diff changeset
43 #define GTK_IMHTML_CLASS(klass) (GTK_CHECK_CLASS_CAST ((klass), GTK_TYPE_IMHTML, GtkIMHtmlClass))
c14bab2b74bb [gaim-migrate @ 1438]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
diff changeset
44 #define GTK_IS_IMHTML(obj) (GTK_CHECK_TYPE ((obj), GTK_TYPE_IMHTML))
c14bab2b74bb [gaim-migrate @ 1438]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
diff changeset
45 #define GTK_IS_IMHTML_CLASS(klass) (GTK_CHECK_CLASS_TYPE ((klass), GTK_TYPE_IMHTML))
5967
df8268ccde45 [gaim-migrate @ 6414]
Mark Doliner <markdoliner@pidgin.im>
parents: 5537
diff changeset
46 #define GTK_IMHTML_SCALABLE(obj) ((GtkIMHtmlScalable *)obj)
1428
c14bab2b74bb [gaim-migrate @ 1438]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
diff changeset
47
5967
df8268ccde45 [gaim-migrate @ 6414]
Mark Doliner <markdoliner@pidgin.im>
parents: 5537
diff changeset
48 typedef struct _GtkIMHtml GtkIMHtml;
df8268ccde45 [gaim-migrate @ 6414]
Mark Doliner <markdoliner@pidgin.im>
parents: 5537
diff changeset
49 typedef struct _GtkIMHtmlClass GtkIMHtmlClass;
df8268ccde45 [gaim-migrate @ 6414]
Mark Doliner <markdoliner@pidgin.im>
parents: 5537
diff changeset
50 typedef struct _GtkIMHtmlFontDetail GtkIMHtmlFontDetail; /* The five elements contained in a FONT tag */
df8268ccde45 [gaim-migrate @ 6414]
Mark Doliner <markdoliner@pidgin.im>
parents: 5537
diff changeset
51 typedef struct _GtkSmileyTree GtkSmileyTree;
df8268ccde45 [gaim-migrate @ 6414]
Mark Doliner <markdoliner@pidgin.im>
parents: 5537
diff changeset
52 typedef struct _GtkIMHtmlSmiley GtkIMHtmlSmiley;
df8268ccde45 [gaim-migrate @ 6414]
Mark Doliner <markdoliner@pidgin.im>
parents: 5537
diff changeset
53 typedef struct _GtkIMHtmlScalable GtkIMHtmlScalable;
df8268ccde45 [gaim-migrate @ 6414]
Mark Doliner <markdoliner@pidgin.im>
parents: 5537
diff changeset
54 typedef struct _GtkIMHtmlImage GtkIMHtmlImage;
df8268ccde45 [gaim-migrate @ 6414]
Mark Doliner <markdoliner@pidgin.im>
parents: 5537
diff changeset
55 typedef struct _GtkIMHtmlHr GtkIMHtmlHr;
8962
5cd12e525d95 [gaim-migrate @ 9736]
Tim Ringenbach <marv@pidgin.im>
parents: 8881
diff changeset
56 typedef struct _GtkIMHtmlFuncs GtkIMHtmlFuncs;
8061
a765ea99b49f [gaim-migrate @ 8749]
Nathan Walp <nwalp@pidgin.im>
parents: 8046
diff changeset
57
8420
71d59c4e2beb [gaim-migrate @ 9150]
Sean Egan <seanegan@pidgin.im>
parents: 8105
diff changeset
58 typedef enum {
10776
b474d64f94ac [gaim-migrate @ 12387]
Tim Ringenbach <marv@pidgin.im>
parents: 10692
diff changeset
59 GTK_IMHTML_BOLD = 1 << 0,
b474d64f94ac [gaim-migrate @ 12387]
Tim Ringenbach <marv@pidgin.im>
parents: 10692
diff changeset
60 GTK_IMHTML_ITALIC = 1 << 1,
b474d64f94ac [gaim-migrate @ 12387]
Tim Ringenbach <marv@pidgin.im>
parents: 10692
diff changeset
61 GTK_IMHTML_UNDERLINE = 1 << 2,
b474d64f94ac [gaim-migrate @ 12387]
Tim Ringenbach <marv@pidgin.im>
parents: 10692
diff changeset
62 GTK_IMHTML_GROW = 1 << 3,
b474d64f94ac [gaim-migrate @ 12387]
Tim Ringenbach <marv@pidgin.im>
parents: 10692
diff changeset
63 GTK_IMHTML_SHRINK = 1 << 4,
b474d64f94ac [gaim-migrate @ 12387]
Tim Ringenbach <marv@pidgin.im>
parents: 10692
diff changeset
64 GTK_IMHTML_FACE = 1 << 5,
b474d64f94ac [gaim-migrate @ 12387]
Tim Ringenbach <marv@pidgin.im>
parents: 10692
diff changeset
65 GTK_IMHTML_FORECOLOR = 1 << 6,
b474d64f94ac [gaim-migrate @ 12387]
Tim Ringenbach <marv@pidgin.im>
parents: 10692
diff changeset
66 GTK_IMHTML_BACKCOLOR = 1 << 7,
b474d64f94ac [gaim-migrate @ 12387]
Tim Ringenbach <marv@pidgin.im>
parents: 10692
diff changeset
67 GTK_IMHTML_BACKGROUND = 1 << 8,
b474d64f94ac [gaim-migrate @ 12387]
Tim Ringenbach <marv@pidgin.im>
parents: 10692
diff changeset
68 GTK_IMHTML_LINK = 1 << 9,
b474d64f94ac [gaim-migrate @ 12387]
Tim Ringenbach <marv@pidgin.im>
parents: 10692
diff changeset
69 GTK_IMHTML_IMAGE = 1 << 10,
b474d64f94ac [gaim-migrate @ 12387]
Tim Ringenbach <marv@pidgin.im>
parents: 10692
diff changeset
70 GTK_IMHTML_SMILEY = 1 << 11,
b474d64f94ac [gaim-migrate @ 12387]
Tim Ringenbach <marv@pidgin.im>
parents: 10692
diff changeset
71 GTK_IMHTML_LINKDESC = 1 << 12,
b474d64f94ac [gaim-migrate @ 12387]
Tim Ringenbach <marv@pidgin.im>
parents: 10692
diff changeset
72 GTK_IMHTML_STRIKE = 1 << 13,
b474d64f94ac [gaim-migrate @ 12387]
Tim Ringenbach <marv@pidgin.im>
parents: 10692
diff changeset
73 GTK_IMHTML_ALL = -1
8420
71d59c4e2beb [gaim-migrate @ 9150]
Sean Egan <seanegan@pidgin.im>
parents: 8105
diff changeset
74 } GtkIMHtmlButtons;
8061
a765ea99b49f [gaim-migrate @ 8749]
Nathan Walp <nwalp@pidgin.im>
parents: 8046
diff changeset
75
11525
1d06283bdcc9 [gaim-migrate @ 13773]
Francesco Fracassi <ffracassi@users.sourceforge.net>
parents: 11485
diff changeset
76 typedef enum {
1d06283bdcc9 [gaim-migrate @ 13773]
Francesco Fracassi <ffracassi@users.sourceforge.net>
parents: 11485
diff changeset
77 GTK_IMHTML_SMILEY_CUSTOM = 1 << 0
1d06283bdcc9 [gaim-migrate @ 13773]
Francesco Fracassi <ffracassi@users.sourceforge.net>
parents: 11485
diff changeset
78 } GtkIMHtmlSmileyFlags;
1d06283bdcc9 [gaim-migrate @ 13773]
Francesco Fracassi <ffracassi@users.sourceforge.net>
parents: 11485
diff changeset
79
1428
c14bab2b74bb [gaim-migrate @ 1438]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
diff changeset
80 struct _GtkIMHtml {
3922
61808e62e68e [gaim-migrate @ 4094]
Sean Egan <seanegan@pidgin.im>
parents: 3867
diff changeset
81 GtkTextView text_view;
61808e62e68e [gaim-migrate @ 4094]
Sean Egan <seanegan@pidgin.im>
parents: 3867
diff changeset
82 GtkTextBuffer *text_buffer;
1428
c14bab2b74bb [gaim-migrate @ 1438]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
diff changeset
83 GdkCursor *hand_cursor;
c14bab2b74bb [gaim-migrate @ 1438]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
diff changeset
84 GdkCursor *arrow_cursor;
8061
a765ea99b49f [gaim-migrate @ 8749]
Nathan Walp <nwalp@pidgin.im>
parents: 8046
diff changeset
85 GdkCursor *text_cursor;
4032
e93f7af4a610 [gaim-migrate @ 4238]
Sean Egan <seanegan@pidgin.im>
parents: 3922
diff changeset
86 GHashTable *smiley_data;
e93f7af4a610 [gaim-migrate @ 4238]
Sean Egan <seanegan@pidgin.im>
parents: 3922
diff changeset
87 GtkSmileyTree *default_smilies;
8456
63fcac86a8fd [gaim-migrate @ 9186]
Gary Kramlich <grim@pidgin.im>
parents: 8427
diff changeset
88 char *protocol_name;
10798
d1aae5d8adb2 [gaim-migrate @ 12441]
Tim Ringenbach <marv@pidgin.im>
parents: 10797
diff changeset
89 guint scroll_src;
d1aae5d8adb2 [gaim-migrate @ 12441]
Tim Ringenbach <marv@pidgin.im>
parents: 10797
diff changeset
90 GTimer *scroll_time;
16385
aa5b9456e258 Fixes #213 This allows only 20 animated smileys to be animnating at a time
Sean Egan <seanegan@pidgin.im>
parents: 16254
diff changeset
91 GQueue *animations;
aa5b9456e258 Fixes #213 This allows only 20 animated smileys to be animnating at a time
Sean Egan <seanegan@pidgin.im>
parents: 16254
diff changeset
92 int num_animations;
4254
1719c39a2b75 [gaim-migrate @ 4505]
Sean Egan <seanegan@pidgin.im>
parents: 4046
diff changeset
93
6124
322206d79652 [gaim-migrate @ 6598]
Mark Doliner <markdoliner@pidgin.im>
parents: 6066
diff changeset
94 gboolean show_comments;
4735
ac5f2489f6ee [gaim-migrate @ 5050]
Ka-Hing Cheung <khc@pidgin.im>
parents: 4371
diff changeset
95
ac5f2489f6ee [gaim-migrate @ 5050]
Ka-Hing Cheung <khc@pidgin.im>
parents: 4371
diff changeset
96 GtkWidget *tip_window;
ac5f2489f6ee [gaim-migrate @ 5050]
Ka-Hing Cheung <khc@pidgin.im>
parents: 4371
diff changeset
97 char *tip;
ac5f2489f6ee [gaim-migrate @ 5050]
Ka-Hing Cheung <khc@pidgin.im>
parents: 4371
diff changeset
98 guint tip_timer;
10799
69ccc5c5518c [gaim-migrate @ 12442]
Tim Ringenbach <marv@pidgin.im>
parents: 10798
diff changeset
99 GtkTextTag *prelit_tag;
4895
51794f61995e [gaim-migrate @ 5227]
Ka-Hing Cheung <khc@pidgin.im>
parents: 4764
diff changeset
100
51794f61995e [gaim-migrate @ 5227]
Ka-Hing Cheung <khc@pidgin.im>
parents: 4764
diff changeset
101 GList *scalables;
4947
b51c8f58eced [gaim-migrate @ 5281]
Sean Egan <seanegan@pidgin.im>
parents: 4895
diff changeset
102 GdkRectangle old_rect;
7295
4b40d35a6b25 [gaim-migrate @ 7879]
Sean Egan <seanegan@pidgin.im>
parents: 6982
diff changeset
103
8061
a765ea99b49f [gaim-migrate @ 8749]
Nathan Walp <nwalp@pidgin.im>
parents: 8046
diff changeset
104 gchar *search_string;
7694
4694af95b1c6 [gaim-migrate @ 8339]
Sean Egan <seanegan@pidgin.im>
parents: 7346
diff changeset
105
8061
a765ea99b49f [gaim-migrate @ 8749]
Nathan Walp <nwalp@pidgin.im>
parents: 8046
diff changeset
106 gboolean editable;
8420
71d59c4e2beb [gaim-migrate @ 9150]
Sean Egan <seanegan@pidgin.im>
parents: 8105
diff changeset
107 GtkIMHtmlButtons format_functions;
8677
18b494207322 [gaim-migrate @ 9430]
Tim Ringenbach <marv@pidgin.im>
parents: 8519
diff changeset
108 gboolean wbfo; /* Whole buffer formatting only. */
18b494207322 [gaim-migrate @ 9430]
Tim Ringenbach <marv@pidgin.im>
parents: 8519
diff changeset
109
18b494207322 [gaim-migrate @ 9430]
Tim Ringenbach <marv@pidgin.im>
parents: 8519
diff changeset
110 gint insert_offset;
8420
71d59c4e2beb [gaim-migrate @ 9150]
Sean Egan <seanegan@pidgin.im>
parents: 8105
diff changeset
111
8061
a765ea99b49f [gaim-migrate @ 8749]
Nathan Walp <nwalp@pidgin.im>
parents: 8046
diff changeset
112 struct {
8677
18b494207322 [gaim-migrate @ 9430]
Tim Ringenbach <marv@pidgin.im>
parents: 8519
diff changeset
113 gboolean bold:1;
18b494207322 [gaim-migrate @ 9430]
Tim Ringenbach <marv@pidgin.im>
parents: 8519
diff changeset
114 gboolean italic:1;
18b494207322 [gaim-migrate @ 9430]
Tim Ringenbach <marv@pidgin.im>
parents: 8519
diff changeset
115 gboolean underline:1;
9924
55cc2ac0bd3f [gaim-migrate @ 10816]
Tim Ringenbach <marv@pidgin.im>
parents: 9713
diff changeset
116 gboolean strike:1;
8677
18b494207322 [gaim-migrate @ 9430]
Tim Ringenbach <marv@pidgin.im>
parents: 8519
diff changeset
117 gchar *forecolor;
18b494207322 [gaim-migrate @ 9430]
Tim Ringenbach <marv@pidgin.im>
parents: 8519
diff changeset
118 gchar *backcolor;
10776
b474d64f94ac [gaim-migrate @ 12387]
Tim Ringenbach <marv@pidgin.im>
parents: 10692
diff changeset
119 gchar *background;
8677
18b494207322 [gaim-migrate @ 9430]
Tim Ringenbach <marv@pidgin.im>
parents: 8519
diff changeset
120 gchar *fontface;
8061
a765ea99b49f [gaim-migrate @ 8749]
Nathan Walp <nwalp@pidgin.im>
parents: 8046
diff changeset
121 int fontsize;
8677
18b494207322 [gaim-migrate @ 9430]
Tim Ringenbach <marv@pidgin.im>
parents: 8519
diff changeset
122 GtkTextTag *link;
8061
a765ea99b49f [gaim-migrate @ 8749]
Nathan Walp <nwalp@pidgin.im>
parents: 8046
diff changeset
123 } edit;
8740
098a43943bba [gaim-migrate @ 9495]
Christian Hammond <chipx86@chipx86.com>
parents: 8735
diff changeset
124
8681
f7dc7d2bf200 [gaim-migrate @ 9434]
Sean Egan <seanegan@pidgin.im>
parents: 8677
diff changeset
125 char *clipboard_text_string;
f7dc7d2bf200 [gaim-migrate @ 9434]
Sean Egan <seanegan@pidgin.im>
parents: 8677
diff changeset
126 char *clipboard_html_string;
8962
5cd12e525d95 [gaim-migrate @ 9736]
Tim Ringenbach <marv@pidgin.im>
parents: 8881
diff changeset
127
5cd12e525d95 [gaim-migrate @ 9736]
Tim Ringenbach <marv@pidgin.im>
parents: 8881
diff changeset
128 GSList *im_images;
5cd12e525d95 [gaim-migrate @ 9736]
Tim Ringenbach <marv@pidgin.im>
parents: 8881
diff changeset
129 GtkIMHtmlFuncs *funcs;
17880
5e73968467e0 Undo/Redo in GtkImHtml from GtkSourceView. This may not be adaquate enough for us.
Sean Egan <seanegan@pidgin.im>
parents: 16385
diff changeset
130 GtkSourceUndoManager *undo_manager;
1428
c14bab2b74bb [gaim-migrate @ 1438]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
diff changeset
131 };
c14bab2b74bb [gaim-migrate @ 1438]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
diff changeset
132
c14bab2b74bb [gaim-migrate @ 1438]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
diff changeset
133 struct _GtkIMHtmlClass {
3922
61808e62e68e [gaim-migrate @ 4094]
Sean Egan <seanegan@pidgin.im>
parents: 3867
diff changeset
134 GtkTextViewClass parent_class;
1428
c14bab2b74bb [gaim-migrate @ 1438]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
diff changeset
135
5967
df8268ccde45 [gaim-migrate @ 6414]
Mark Doliner <markdoliner@pidgin.im>
parents: 5537
diff changeset
136 void (*url_clicked)(GtkIMHtml *, const gchar *);
8420
71d59c4e2beb [gaim-migrate @ 9150]
Sean Egan <seanegan@pidgin.im>
parents: 8105
diff changeset
137 void (*buttons_update)(GtkIMHtml *, GtkIMHtmlButtons);
71d59c4e2beb [gaim-migrate @ 9150]
Sean Egan <seanegan@pidgin.im>
parents: 8105
diff changeset
138 void (*toggle_format)(GtkIMHtml *, GtkIMHtmlButtons);
8427
b99f5085af0a [gaim-migrate @ 9157]
Sean Egan <seanegan@pidgin.im>
parents: 8420
diff changeset
139 void (*clear_format)(GtkIMHtml *);
8506
76ce3a78b130 [gaim-migrate @ 9242]
Gary Kramlich <grim@pidgin.im>
parents: 8481
diff changeset
140 void (*update_format)(GtkIMHtml *);
10108
0897c42d6cb9 [gaim-migrate @ 11141]
Sean Egan <seanegan@pidgin.im>
parents: 9950
diff changeset
141 gboolean (*message_send)(GtkIMHtml *);
17880
5e73968467e0 Undo/Redo in GtkImHtml from GtkSourceView. This may not be adaquate enough for us.
Sean Egan <seanegan@pidgin.im>
parents: 16385
diff changeset
142 void (*undo)(GtkIMHtml *);
5e73968467e0 Undo/Redo in GtkImHtml from GtkSourceView. This may not be adaquate enough for us.
Sean Egan <seanegan@pidgin.im>
parents: 16385
diff changeset
143 void (*redo)(GtkIMHtml *);
5967
df8268ccde45 [gaim-migrate @ 6414]
Mark Doliner <markdoliner@pidgin.im>
parents: 5537
diff changeset
144 };
df8268ccde45 [gaim-migrate @ 6414]
Mark Doliner <markdoliner@pidgin.im>
parents: 5537
diff changeset
145
df8268ccde45 [gaim-migrate @ 6414]
Mark Doliner <markdoliner@pidgin.im>
parents: 5537
diff changeset
146 struct _GtkIMHtmlFontDetail {
df8268ccde45 [gaim-migrate @ 6414]
Mark Doliner <markdoliner@pidgin.im>
parents: 5537
diff changeset
147 gushort size;
df8268ccde45 [gaim-migrate @ 6414]
Mark Doliner <markdoliner@pidgin.im>
parents: 5537
diff changeset
148 gchar *face;
df8268ccde45 [gaim-migrate @ 6414]
Mark Doliner <markdoliner@pidgin.im>
parents: 5537
diff changeset
149 gchar *fore;
df8268ccde45 [gaim-migrate @ 6414]
Mark Doliner <markdoliner@pidgin.im>
parents: 5537
diff changeset
150 gchar *back;
10776
b474d64f94ac [gaim-migrate @ 12387]
Tim Ringenbach <marv@pidgin.im>
parents: 10692
diff changeset
151 gchar *bg;
5967
df8268ccde45 [gaim-migrate @ 6414]
Mark Doliner <markdoliner@pidgin.im>
parents: 5537
diff changeset
152 gchar *sml;
9950
ac8bc7606554 [gaim-migrate @ 10846]
Tim Ringenbach <marv@pidgin.im>
parents: 9924
diff changeset
153 gboolean underline;
14395
cf8c889161ff [gaim-migrate @ 17029]
Nathan Walp <nwalp@pidgin.im>
parents: 14253
diff changeset
154 gshort bold;
5967
df8268ccde45 [gaim-migrate @ 6414]
Mark Doliner <markdoliner@pidgin.im>
parents: 5537
diff changeset
155 };
df8268ccde45 [gaim-migrate @ 6414]
Mark Doliner <markdoliner@pidgin.im>
parents: 5537
diff changeset
156
df8268ccde45 [gaim-migrate @ 6414]
Mark Doliner <markdoliner@pidgin.im>
parents: 5537
diff changeset
157 struct _GtkSmileyTree {
df8268ccde45 [gaim-migrate @ 6414]
Mark Doliner <markdoliner@pidgin.im>
parents: 5537
diff changeset
158 GString *values;
df8268ccde45 [gaim-migrate @ 6414]
Mark Doliner <markdoliner@pidgin.im>
parents: 5537
diff changeset
159 GtkSmileyTree **children;
df8268ccde45 [gaim-migrate @ 6414]
Mark Doliner <markdoliner@pidgin.im>
parents: 5537
diff changeset
160 GtkIMHtmlSmiley *image;
1428
c14bab2b74bb [gaim-migrate @ 1438]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
diff changeset
161 };
c14bab2b74bb [gaim-migrate @ 1438]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
diff changeset
162
4263
054b3ea4e7c5 [gaim-migrate @ 4514]
Sean Egan <seanegan@pidgin.im>
parents: 4254
diff changeset
163 struct _GtkIMHtmlSmiley {
054b3ea4e7c5 [gaim-migrate @ 4514]
Sean Egan <seanegan@pidgin.im>
parents: 4254
diff changeset
164 gchar *smile;
054b3ea4e7c5 [gaim-migrate @ 4514]
Sean Egan <seanegan@pidgin.im>
parents: 4254
diff changeset
165 gchar *file;
6814
8520a41fd75d [gaim-migrate @ 7354]
Ka-Hing Cheung <khc@pidgin.im>
parents: 6282
diff changeset
166 GdkPixbufAnimation *icon;
4263
054b3ea4e7c5 [gaim-migrate @ 4514]
Sean Egan <seanegan@pidgin.im>
parents: 4254
diff changeset
167 gboolean hidden;
10526
05b5c6d4090d [gaim-migrate @ 11843]
Tim Ringenbach <marv@pidgin.im>
parents: 10525
diff changeset
168 GdkPixbufLoader *loader;
11525
1d06283bdcc9 [gaim-migrate @ 13773]
Francesco Fracassi <ffracassi@users.sourceforge.net>
parents: 11485
diff changeset
169 GSList *anchors;
12335
d0a2da9e75c0 [gaim-migrate @ 14639]
Tim Ringenbach <marv@pidgin.im>
parents: 12323
diff changeset
170 GtkIMHtmlSmileyFlags flags;
d0a2da9e75c0 [gaim-migrate @ 14639]
Tim Ringenbach <marv@pidgin.im>
parents: 12323
diff changeset
171 GtkIMHtml *imhtml;
4263
054b3ea4e7c5 [gaim-migrate @ 4514]
Sean Egan <seanegan@pidgin.im>
parents: 4254
diff changeset
172 };
054b3ea4e7c5 [gaim-migrate @ 4514]
Sean Egan <seanegan@pidgin.im>
parents: 4254
diff changeset
173
5967
df8268ccde45 [gaim-migrate @ 6414]
Mark Doliner <markdoliner@pidgin.im>
parents: 5537
diff changeset
174 struct _GtkIMHtmlScalable {
4895
51794f61995e [gaim-migrate @ 5227]
Ka-Hing Cheung <khc@pidgin.im>
parents: 4764
diff changeset
175 void (*scale)(struct _GtkIMHtmlScalable *, int, int);
51794f61995e [gaim-migrate @ 5227]
Ka-Hing Cheung <khc@pidgin.im>
parents: 4764
diff changeset
176 void (*add_to)(struct _GtkIMHtmlScalable *, GtkIMHtml *, GtkTextIter *);
51794f61995e [gaim-migrate @ 5227]
Ka-Hing Cheung <khc@pidgin.im>
parents: 4764
diff changeset
177 void (*free)(struct _GtkIMHtmlScalable *);
51794f61995e [gaim-migrate @ 5227]
Ka-Hing Cheung <khc@pidgin.im>
parents: 4764
diff changeset
178 };
51794f61995e [gaim-migrate @ 5227]
Ka-Hing Cheung <khc@pidgin.im>
parents: 4764
diff changeset
179
5967
df8268ccde45 [gaim-migrate @ 6414]
Mark Doliner <markdoliner@pidgin.im>
parents: 5537
diff changeset
180 struct _GtkIMHtmlImage {
4895
51794f61995e [gaim-migrate @ 5227]
Ka-Hing Cheung <khc@pidgin.im>
parents: 4764
diff changeset
181 GtkIMHtmlScalable scalable;
5012
a6e5bbd44d89 [gaim-migrate @ 5348]
Ka-Hing Cheung <khc@pidgin.im>
parents: 4947
diff changeset
182 GtkImage *image;
5046
ba5af38017fa [gaim-migrate @ 5394]
Ka-Hing Cheung <khc@pidgin.im>
parents: 5034
diff changeset
183 GdkPixbuf *pixbuf;
4895
51794f61995e [gaim-migrate @ 5227]
Ka-Hing Cheung <khc@pidgin.im>
parents: 4764
diff changeset
184 GtkTextMark *mark;
5012
a6e5bbd44d89 [gaim-migrate @ 5348]
Ka-Hing Cheung <khc@pidgin.im>
parents: 4947
diff changeset
185 gchar *filename;
4895
51794f61995e [gaim-migrate @ 5227]
Ka-Hing Cheung <khc@pidgin.im>
parents: 4764
diff changeset
186 int width;
51794f61995e [gaim-migrate @ 5227]
Ka-Hing Cheung <khc@pidgin.im>
parents: 4764
diff changeset
187 int height;
8962
5cd12e525d95 [gaim-migrate @ 9736]
Tim Ringenbach <marv@pidgin.im>
parents: 8881
diff changeset
188 int id;
9573
7fb26654aee8 [gaim-migrate @ 10416]
Mark Doliner <markdoliner@pidgin.im>
parents: 9307
diff changeset
189 GtkWidget *filesel;
5967
df8268ccde45 [gaim-migrate @ 6414]
Mark Doliner <markdoliner@pidgin.im>
parents: 5537
diff changeset
190 };
4895
51794f61995e [gaim-migrate @ 5227]
Ka-Hing Cheung <khc@pidgin.im>
parents: 4764
diff changeset
191
5967
df8268ccde45 [gaim-migrate @ 6414]
Mark Doliner <markdoliner@pidgin.im>
parents: 5537
diff changeset
192 struct _GtkIMHtmlHr {
4895
51794f61995e [gaim-migrate @ 5227]
Ka-Hing Cheung <khc@pidgin.im>
parents: 4764
diff changeset
193 GtkIMHtmlScalable scalable;
51794f61995e [gaim-migrate @ 5227]
Ka-Hing Cheung <khc@pidgin.im>
parents: 4764
diff changeset
194 GtkWidget *sep;
5967
df8268ccde45 [gaim-migrate @ 6414]
Mark Doliner <markdoliner@pidgin.im>
parents: 5537
diff changeset
195 };
df8268ccde45 [gaim-migrate @ 6414]
Mark Doliner <markdoliner@pidgin.im>
parents: 5537
diff changeset
196
df8268ccde45 [gaim-migrate @ 6414]
Mark Doliner <markdoliner@pidgin.im>
parents: 5537
diff changeset
197 typedef enum {
12553
52b3403a1690 [gaim-migrate @ 14871]
Nathan Walp <nwalp@pidgin.im>
parents: 12335
diff changeset
198 GTK_IMHTML_NO_COLOURS = 1 << 0,
52b3403a1690 [gaim-migrate @ 14871]
Nathan Walp <nwalp@pidgin.im>
parents: 12335
diff changeset
199 GTK_IMHTML_NO_FONTS = 1 << 1,
52b3403a1690 [gaim-migrate @ 14871]
Nathan Walp <nwalp@pidgin.im>
parents: 12335
diff changeset
200 GTK_IMHTML_NO_COMMENTS = 1 << 2, /* Remove */
52b3403a1690 [gaim-migrate @ 14871]
Nathan Walp <nwalp@pidgin.im>
parents: 12335
diff changeset
201 GTK_IMHTML_NO_TITLE = 1 << 3,
52b3403a1690 [gaim-migrate @ 14871]
Nathan Walp <nwalp@pidgin.im>
parents: 12335
diff changeset
202 GTK_IMHTML_NO_NEWLINE = 1 << 4,
52b3403a1690 [gaim-migrate @ 14871]
Nathan Walp <nwalp@pidgin.im>
parents: 12335
diff changeset
203 GTK_IMHTML_NO_SIZES = 1 << 5,
52b3403a1690 [gaim-migrate @ 14871]
Nathan Walp <nwalp@pidgin.im>
parents: 12335
diff changeset
204 GTK_IMHTML_NO_SCROLL = 1 << 6,
52b3403a1690 [gaim-migrate @ 14871]
Nathan Walp <nwalp@pidgin.im>
parents: 12335
diff changeset
205 GTK_IMHTML_RETURN_LOG = 1 << 7,
52b3403a1690 [gaim-migrate @ 14871]
Nathan Walp <nwalp@pidgin.im>
parents: 12335
diff changeset
206 GTK_IMHTML_USE_POINTSIZE = 1 << 8,
52b3403a1690 [gaim-migrate @ 14871]
Nathan Walp <nwalp@pidgin.im>
parents: 12335
diff changeset
207 GTK_IMHTML_NO_FORMATTING = 1 << 9,
52b3403a1690 [gaim-migrate @ 14871]
Nathan Walp <nwalp@pidgin.im>
parents: 12335
diff changeset
208 GTK_IMHTML_USE_SMOOTHSCROLLING = 1 << 10
5967
df8268ccde45 [gaim-migrate @ 6414]
Mark Doliner <markdoliner@pidgin.im>
parents: 5537
diff changeset
209 } GtkIMHtmlOptions;
df8268ccde45 [gaim-migrate @ 6414]
Mark Doliner <markdoliner@pidgin.im>
parents: 5537
diff changeset
210
10145
f1405f65ff41 [gaim-migrate @ 11218]
Stu Tomlinson <nosnilmot@pidgin.im>
parents: 10108
diff changeset
211 enum {
f1405f65ff41 [gaim-migrate @ 11218]
Stu Tomlinson <nosnilmot@pidgin.im>
parents: 10108
diff changeset
212 GTK_IMHTML_DRAG_URL = 0,
f1405f65ff41 [gaim-migrate @ 11218]
Stu Tomlinson <nosnilmot@pidgin.im>
parents: 10108
diff changeset
213 GTK_IMHTML_DRAG_HTML,
f1405f65ff41 [gaim-migrate @ 11218]
Stu Tomlinson <nosnilmot@pidgin.im>
parents: 10108
diff changeset
214 GTK_IMHTML_DRAG_UTF8_STRING,
f1405f65ff41 [gaim-migrate @ 11218]
Stu Tomlinson <nosnilmot@pidgin.im>
parents: 10108
diff changeset
215 GTK_IMHTML_DRAG_COMPOUND_TEXT,
f1405f65ff41 [gaim-migrate @ 11218]
Stu Tomlinson <nosnilmot@pidgin.im>
parents: 10108
diff changeset
216 GTK_IMHTML_DRAG_STRING,
f1405f65ff41 [gaim-migrate @ 11218]
Stu Tomlinson <nosnilmot@pidgin.im>
parents: 10108
diff changeset
217 GTK_IMHTML_DRAG_TEXT,
f1405f65ff41 [gaim-migrate @ 11218]
Stu Tomlinson <nosnilmot@pidgin.im>
parents: 10108
diff changeset
218 GTK_IMHTML_DRAG_NUM
f1405f65ff41 [gaim-migrate @ 11218]
Stu Tomlinson <nosnilmot@pidgin.im>
parents: 10108
diff changeset
219 };
f1405f65ff41 [gaim-migrate @ 11218]
Stu Tomlinson <nosnilmot@pidgin.im>
parents: 10108
diff changeset
220
f1405f65ff41 [gaim-migrate @ 11218]
Stu Tomlinson <nosnilmot@pidgin.im>
parents: 10108
diff changeset
221 #define GTK_IMHTML_DND_TARGETS \
10345
7d7f8cfa2b4f [gaim-migrate @ 11556]
Felipe Contreras <felipe.contreras@gmail.com>
parents: 10243
diff changeset
222 { "text/uri-list", 0, GTK_IMHTML_DRAG_URL }, \
10243
6d75b29afc71 [gaim-migrate @ 11383]
Stu Tomlinson <nosnilmot@pidgin.im>
parents: 10165
diff changeset
223 { "_NETSCAPE_URL", 0, GTK_IMHTML_DRAG_URL }, \
10145
f1405f65ff41 [gaim-migrate @ 11218]
Stu Tomlinson <nosnilmot@pidgin.im>
parents: 10108
diff changeset
224 { "text/html", 0, GTK_IMHTML_DRAG_HTML }, \
f1405f65ff41 [gaim-migrate @ 11218]
Stu Tomlinson <nosnilmot@pidgin.im>
parents: 10108
diff changeset
225 { "x-url/ftp", 0, GTK_IMHTML_DRAG_URL }, \
f1405f65ff41 [gaim-migrate @ 11218]
Stu Tomlinson <nosnilmot@pidgin.im>
parents: 10108
diff changeset
226 { "x-url/http", 0, GTK_IMHTML_DRAG_URL }, \
f1405f65ff41 [gaim-migrate @ 11218]
Stu Tomlinson <nosnilmot@pidgin.im>
parents: 10108
diff changeset
227 { "UTF8_STRING", 0, GTK_IMHTML_DRAG_UTF8_STRING }, \
f1405f65ff41 [gaim-migrate @ 11218]
Stu Tomlinson <nosnilmot@pidgin.im>
parents: 10108
diff changeset
228 { "COMPOUND_TEXT", 0, GTK_IMHTML_DRAG_COMPOUND_TEXT }, \
f1405f65ff41 [gaim-migrate @ 11218]
Stu Tomlinson <nosnilmot@pidgin.im>
parents: 10108
diff changeset
229 { "STRING", 0, GTK_IMHTML_DRAG_STRING }, \
f1405f65ff41 [gaim-migrate @ 11218]
Stu Tomlinson <nosnilmot@pidgin.im>
parents: 10108
diff changeset
230 { "text/plain", 0, GTK_IMHTML_DRAG_TEXT }, \
f1405f65ff41 [gaim-migrate @ 11218]
Stu Tomlinson <nosnilmot@pidgin.im>
parents: 10108
diff changeset
231 { "TEXT", 0, GTK_IMHTML_DRAG_TEXT }
f1405f65ff41 [gaim-migrate @ 11218]
Stu Tomlinson <nosnilmot@pidgin.im>
parents: 10108
diff changeset
232
8962
5cd12e525d95 [gaim-migrate @ 9736]
Tim Ringenbach <marv@pidgin.im>
parents: 8881
diff changeset
233 typedef gpointer (*GtkIMHtmlGetImageFunc) (int id);
5cd12e525d95 [gaim-migrate @ 9736]
Tim Ringenbach <marv@pidgin.im>
parents: 8881
diff changeset
234 typedef gpointer (*GtkIMHtmlGetImageDataFunc) (gpointer i);
5cd12e525d95 [gaim-migrate @ 9736]
Tim Ringenbach <marv@pidgin.im>
parents: 8881
diff changeset
235 typedef size_t (*GtkIMHtmlGetImageSizeFunc) (gpointer i);
5cd12e525d95 [gaim-migrate @ 9736]
Tim Ringenbach <marv@pidgin.im>
parents: 8881
diff changeset
236 typedef const char *(*GtkIMHtmlGetImageFilenameFunc)(gpointer i);
5cd12e525d95 [gaim-migrate @ 9736]
Tim Ringenbach <marv@pidgin.im>
parents: 8881
diff changeset
237 typedef void (*GtkIMHtmlImageRefFunc) (int id);
5cd12e525d95 [gaim-migrate @ 9736]
Tim Ringenbach <marv@pidgin.im>
parents: 8881
diff changeset
238 typedef void (*GtkIMHtmlImageUnrefFunc) (int id);
5cd12e525d95 [gaim-migrate @ 9736]
Tim Ringenbach <marv@pidgin.im>
parents: 8881
diff changeset
239
5cd12e525d95 [gaim-migrate @ 9736]
Tim Ringenbach <marv@pidgin.im>
parents: 8881
diff changeset
240 struct _GtkIMHtmlFuncs {
5cd12e525d95 [gaim-migrate @ 9736]
Tim Ringenbach <marv@pidgin.im>
parents: 8881
diff changeset
241 GtkIMHtmlGetImageFunc image_get;
5cd12e525d95 [gaim-migrate @ 9736]
Tim Ringenbach <marv@pidgin.im>
parents: 8881
diff changeset
242 GtkIMHtmlGetImageDataFunc image_get_data;
5cd12e525d95 [gaim-migrate @ 9736]
Tim Ringenbach <marv@pidgin.im>
parents: 8881
diff changeset
243 GtkIMHtmlGetImageSizeFunc image_get_size;
5cd12e525d95 [gaim-migrate @ 9736]
Tim Ringenbach <marv@pidgin.im>
parents: 8881
diff changeset
244 GtkIMHtmlGetImageFilenameFunc image_get_filename;
5cd12e525d95 [gaim-migrate @ 9736]
Tim Ringenbach <marv@pidgin.im>
parents: 8881
diff changeset
245 GtkIMHtmlImageRefFunc image_ref;
5cd12e525d95 [gaim-migrate @ 9736]
Tim Ringenbach <marv@pidgin.im>
parents: 8881
diff changeset
246 GtkIMHtmlImageUnrefFunc image_unref;
5cd12e525d95 [gaim-migrate @ 9736]
Tim Ringenbach <marv@pidgin.im>
parents: 8881
diff changeset
247 };
5cd12e525d95 [gaim-migrate @ 9736]
Tim Ringenbach <marv@pidgin.im>
parents: 8881
diff changeset
248
9033
5095532375ba [gaim-migrate @ 9809]
Kevin Stange <kstange@pidgin.im>
parents: 9029
diff changeset
249 /*@}*/
8962
5cd12e525d95 [gaim-migrate @ 9736]
Tim Ringenbach <marv@pidgin.im>
parents: 8881
diff changeset
250
9033
5095532375ba [gaim-migrate @ 9809]
Kevin Stange <kstange@pidgin.im>
parents: 9029
diff changeset
251 /**************************************************************************
5095532375ba [gaim-migrate @ 9809]
Kevin Stange <kstange@pidgin.im>
parents: 9029
diff changeset
252 * @name GTK+ IM/HTML rendering component API
5095532375ba [gaim-migrate @ 9809]
Kevin Stange <kstange@pidgin.im>
parents: 9029
diff changeset
253 **************************************************************************/
5095532375ba [gaim-migrate @ 9809]
Kevin Stange <kstange@pidgin.im>
parents: 9029
diff changeset
254 /*@{*/
5095532375ba [gaim-migrate @ 9809]
Kevin Stange <kstange@pidgin.im>
parents: 9029
diff changeset
255
5095532375ba [gaim-migrate @ 9809]
Kevin Stange <kstange@pidgin.im>
parents: 9029
diff changeset
256 /**
9037
6ba358dfe075 [gaim-migrate @ 9813]
Kevin Stange <kstange@pidgin.im>
parents: 9034
diff changeset
257 * Returns the GType object for an IM/HTML widget.
9033
5095532375ba [gaim-migrate @ 9809]
Kevin Stange <kstange@pidgin.im>
parents: 9029
diff changeset
258 *
9037
6ba358dfe075 [gaim-migrate @ 9813]
Kevin Stange <kstange@pidgin.im>
parents: 9034
diff changeset
259 * @return The GType for an IM/HTML widget.
9033
5095532375ba [gaim-migrate @ 9809]
Kevin Stange <kstange@pidgin.im>
parents: 9029
diff changeset
260 */
9037
6ba358dfe075 [gaim-migrate @ 9813]
Kevin Stange <kstange@pidgin.im>
parents: 9034
diff changeset
261 GType gtk_imhtml_get_type(void);
5967
df8268ccde45 [gaim-migrate @ 6414]
Mark Doliner <markdoliner@pidgin.im>
parents: 5537
diff changeset
262
9033
5095532375ba [gaim-migrate @ 9809]
Kevin Stange <kstange@pidgin.im>
parents: 9029
diff changeset
263 /**
10814
7e17cb56b019 [gaim-migrate @ 12468]
Luke Schierer <lschiere@pidgin.im>
parents: 10799
diff changeset
264 * Creates and returns a new GTK+ IM/HTML widget.
9033
5095532375ba [gaim-migrate @ 9809]
Kevin Stange <kstange@pidgin.im>
parents: 9029
diff changeset
265 *
10814
7e17cb56b019 [gaim-migrate @ 12468]
Luke Schierer <lschiere@pidgin.im>
parents: 10799
diff changeset
266 * @return The GTK+ IM/HTML widget created.
9033
5095532375ba [gaim-migrate @ 9809]
Kevin Stange <kstange@pidgin.im>
parents: 9029
diff changeset
267 */
5095532375ba [gaim-migrate @ 9809]
Kevin Stange <kstange@pidgin.im>
parents: 9029
diff changeset
268 GtkWidget *gtk_imhtml_new(void *, void *);
5967
df8268ccde45 [gaim-migrate @ 6414]
Mark Doliner <markdoliner@pidgin.im>
parents: 5537
diff changeset
269
9033
5095532375ba [gaim-migrate @ 9809]
Kevin Stange <kstange@pidgin.im>
parents: 9029
diff changeset
270 /**
10526
05b5c6d4090d [gaim-migrate @ 11843]
Tim Ringenbach <marv@pidgin.im>
parents: 10525
diff changeset
271 * Returns the smiley object associated with the text.
05b5c6d4090d [gaim-migrate @ 11843]
Tim Ringenbach <marv@pidgin.im>
parents: 10525
diff changeset
272 *
10814
7e17cb56b019 [gaim-migrate @ 12468]
Luke Schierer <lschiere@pidgin.im>
parents: 10799
diff changeset
273 * @param imhtml The GTK+ IM/HTML.
10526
05b5c6d4090d [gaim-migrate @ 11843]
Tim Ringenbach <marv@pidgin.im>
parents: 10525
diff changeset
274 * @param sml The name of the smiley category.
05b5c6d4090d [gaim-migrate @ 11843]
Tim Ringenbach <marv@pidgin.im>
parents: 10525
diff changeset
275 * @param text The text associated with the smiley.
05b5c6d4090d [gaim-migrate @ 11843]
Tim Ringenbach <marv@pidgin.im>
parents: 10525
diff changeset
276 */
05b5c6d4090d [gaim-migrate @ 11843]
Tim Ringenbach <marv@pidgin.im>
parents: 10525
diff changeset
277
05b5c6d4090d [gaim-migrate @ 11843]
Tim Ringenbach <marv@pidgin.im>
parents: 10525
diff changeset
278 GtkIMHtmlSmiley *gtk_imhtml_smiley_get(GtkIMHtml * imhtml,
05b5c6d4090d [gaim-migrate @ 11843]
Tim Ringenbach <marv@pidgin.im>
parents: 10525
diff changeset
279 const gchar * sml, const gchar * text);
05b5c6d4090d [gaim-migrate @ 11843]
Tim Ringenbach <marv@pidgin.im>
parents: 10525
diff changeset
280
05b5c6d4090d [gaim-migrate @ 11843]
Tim Ringenbach <marv@pidgin.im>
parents: 10525
diff changeset
281
05b5c6d4090d [gaim-migrate @ 11843]
Tim Ringenbach <marv@pidgin.im>
parents: 10525
diff changeset
282 /**
10814
7e17cb56b019 [gaim-migrate @ 12468]
Luke Schierer <lschiere@pidgin.im>
parents: 10799
diff changeset
283 * Associates a smiley with a GTK+ IM/HTML.
9033
5095532375ba [gaim-migrate @ 9809]
Kevin Stange <kstange@pidgin.im>
parents: 9029
diff changeset
284 *
10814
7e17cb56b019 [gaim-migrate @ 12468]
Luke Schierer <lschiere@pidgin.im>
parents: 10799
diff changeset
285 * @param imhtml The GTK+ IM/HTML.
9033
5095532375ba [gaim-migrate @ 9809]
Kevin Stange <kstange@pidgin.im>
parents: 9029
diff changeset
286 * @param sml The name of the smiley category.
5095532375ba [gaim-migrate @ 9809]
Kevin Stange <kstange@pidgin.im>
parents: 9029
diff changeset
287 * @param smiley The GtkIMSmiley to associate.
5095532375ba [gaim-migrate @ 9809]
Kevin Stange <kstange@pidgin.im>
parents: 9029
diff changeset
288 */
10537
9ece7671fa62 [gaim-migrate @ 11890]
Mark Doliner <markdoliner@pidgin.im>
parents: 10526
diff changeset
289 void gtk_imhtml_associate_smiley(GtkIMHtml *imhtml, const gchar *sml, GtkIMHtmlSmiley *smiley);
9033
5095532375ba [gaim-migrate @ 9809]
Kevin Stange <kstange@pidgin.im>
parents: 9029
diff changeset
290
5095532375ba [gaim-migrate @ 9809]
Kevin Stange <kstange@pidgin.im>
parents: 9029
diff changeset
291 /**
10814
7e17cb56b019 [gaim-migrate @ 12468]
Luke Schierer <lschiere@pidgin.im>
parents: 10799
diff changeset
292 * Removes all smileys associated with a GTK+ IM/HTML.
9033
5095532375ba [gaim-migrate @ 9809]
Kevin Stange <kstange@pidgin.im>
parents: 9029
diff changeset
293 *
10814
7e17cb56b019 [gaim-migrate @ 12468]
Luke Schierer <lschiere@pidgin.im>
parents: 10799
diff changeset
294 * @param imhtml The GTK+ IM/HTML.
9033
5095532375ba [gaim-migrate @ 9809]
Kevin Stange <kstange@pidgin.im>
parents: 9029
diff changeset
295 */
5095532375ba [gaim-migrate @ 9809]
Kevin Stange <kstange@pidgin.im>
parents: 9029
diff changeset
296 void gtk_imhtml_remove_smileys(GtkIMHtml *imhtml);
5967
df8268ccde45 [gaim-migrate @ 6414]
Mark Doliner <markdoliner@pidgin.im>
parents: 5537
diff changeset
297
9033
5095532375ba [gaim-migrate @ 9809]
Kevin Stange <kstange@pidgin.im>
parents: 9029
diff changeset
298 /**
10814
7e17cb56b019 [gaim-migrate @ 12468]
Luke Schierer <lschiere@pidgin.im>
parents: 10799
diff changeset
299 * Sets the function callbacks to use with a GTK+ IM/HTML instance.
9033
5095532375ba [gaim-migrate @ 9809]
Kevin Stange <kstange@pidgin.im>
parents: 9029
diff changeset
300 *
10814
7e17cb56b019 [gaim-migrate @ 12468]
Luke Schierer <lschiere@pidgin.im>
parents: 10799
diff changeset
301 * @param imhtml The GTK+ IM/HTML.
9033
5095532375ba [gaim-migrate @ 9809]
Kevin Stange <kstange@pidgin.im>
parents: 9029
diff changeset
302 * @param f The GtkIMHTMLFuncs struct containing the functions to use.
5095532375ba [gaim-migrate @ 9809]
Kevin Stange <kstange@pidgin.im>
parents: 9029
diff changeset
303 */
5095532375ba [gaim-migrate @ 9809]
Kevin Stange <kstange@pidgin.im>
parents: 9029
diff changeset
304 void gtk_imhtml_set_funcs(GtkIMHtml *imhtml, GtkIMHtmlFuncs *f);
5967
df8268ccde45 [gaim-migrate @ 6414]
Mark Doliner <markdoliner@pidgin.im>
parents: 5537
diff changeset
305
9033
5095532375ba [gaim-migrate @ 9809]
Kevin Stange <kstange@pidgin.im>
parents: 9029
diff changeset
306 /**
10814
7e17cb56b019 [gaim-migrate @ 12468]
Luke Schierer <lschiere@pidgin.im>
parents: 10799
diff changeset
307 * Enables or disables showing the contents of HTML comments in a GTK+ IM/HTML.
9033
5095532375ba [gaim-migrate @ 9809]
Kevin Stange <kstange@pidgin.im>
parents: 9029
diff changeset
308 *
10814
7e17cb56b019 [gaim-migrate @ 12468]
Luke Schierer <lschiere@pidgin.im>
parents: 10799
diff changeset
309 * @param imhtml The GTK+ IM/HTML.
9033
5095532375ba [gaim-migrate @ 9809]
Kevin Stange <kstange@pidgin.im>
parents: 9029
diff changeset
310 * @param show @c TRUE if comments should be shown, or @c FALSE otherwise.
5095532375ba [gaim-migrate @ 9809]
Kevin Stange <kstange@pidgin.im>
parents: 9029
diff changeset
311 */
5095532375ba [gaim-migrate @ 9809]
Kevin Stange <kstange@pidgin.im>
parents: 9029
diff changeset
312 void gtk_imhtml_show_comments(GtkIMHtml *imhtml, gboolean show);
8962
5cd12e525d95 [gaim-migrate @ 9736]
Tim Ringenbach <marv@pidgin.im>
parents: 8881
diff changeset
313
9033
5095532375ba [gaim-migrate @ 9809]
Kevin Stange <kstange@pidgin.im>
parents: 9029
diff changeset
314 /**
11814
5003711283c0 [gaim-migrate @ 14105]
Richard Laager <rlaager@pidgin.im>
parents: 11525
diff changeset
315 * Gets the protocol name associated with this GTK+ IM/HTML.
5003711283c0 [gaim-migrate @ 14105]
Richard Laager <rlaager@pidgin.im>
parents: 11525
diff changeset
316 *
5003711283c0 [gaim-migrate @ 14105]
Richard Laager <rlaager@pidgin.im>
parents: 11525
diff changeset
317 * @param imhtml The GTK+ IM/HTML
5003711283c0 [gaim-migrate @ 14105]
Richard Laager <rlaager@pidgin.im>
parents: 11525
diff changeset
318 */
5003711283c0 [gaim-migrate @ 14105]
Richard Laager <rlaager@pidgin.im>
parents: 11525
diff changeset
319 const char *gtk_imhtml_get_protocol_name(GtkIMHtml *imhtml);
5003711283c0 [gaim-migrate @ 14105]
Richard Laager <rlaager@pidgin.im>
parents: 11525
diff changeset
320
5003711283c0 [gaim-migrate @ 14105]
Richard Laager <rlaager@pidgin.im>
parents: 11525
diff changeset
321 /**
10814
7e17cb56b019 [gaim-migrate @ 12468]
Luke Schierer <lschiere@pidgin.im>
parents: 10799
diff changeset
322 * Associates a protocol name with a GTK+ IM/HTML.
9033
5095532375ba [gaim-migrate @ 9809]
Kevin Stange <kstange@pidgin.im>
parents: 9029
diff changeset
323 *
10814
7e17cb56b019 [gaim-migrate @ 12468]
Luke Schierer <lschiere@pidgin.im>
parents: 10799
diff changeset
324 * @param imhtml The GTK+ IM/HTML.
9033
5095532375ba [gaim-migrate @ 9809]
Kevin Stange <kstange@pidgin.im>
parents: 9029
diff changeset
325 * @param protocol_name The protocol name to associate with the IM/HTML.
5095532375ba [gaim-migrate @ 9809]
Kevin Stange <kstange@pidgin.im>
parents: 9029
diff changeset
326 */
5095532375ba [gaim-migrate @ 9809]
Kevin Stange <kstange@pidgin.im>
parents: 9029
diff changeset
327 void gtk_imhtml_set_protocol_name(GtkIMHtml *imhtml, const gchar *protocol_name);
8456
63fcac86a8fd [gaim-migrate @ 9186]
Gary Kramlich <grim@pidgin.im>
parents: 8427
diff changeset
328
9033
5095532375ba [gaim-migrate @ 9809]
Kevin Stange <kstange@pidgin.im>
parents: 9029
diff changeset
329 /**
10814
7e17cb56b019 [gaim-migrate @ 12468]
Luke Schierer <lschiere@pidgin.im>
parents: 10799
diff changeset
330 * Appends HTML formatted text to a GTK+ IM/HTML.
9033
5095532375ba [gaim-migrate @ 9809]
Kevin Stange <kstange@pidgin.im>
parents: 9029
diff changeset
331 *
10814
7e17cb56b019 [gaim-migrate @ 12468]
Luke Schierer <lschiere@pidgin.im>
parents: 10799
diff changeset
332 * @param imhtml The GTK+ IM/HTML.
9033
5095532375ba [gaim-migrate @ 9809]
Kevin Stange <kstange@pidgin.im>
parents: 9029
diff changeset
333 * @param text The formatted text to append.
5095532375ba [gaim-migrate @ 9809]
Kevin Stange <kstange@pidgin.im>
parents: 9029
diff changeset
334 * @param options A GtkIMHtmlOptions object indicating insert behavior.
5095532375ba [gaim-migrate @ 9809]
Kevin Stange <kstange@pidgin.im>
parents: 9029
diff changeset
335 */
9307
a446c1ba05ee [gaim-migrate @ 10115]
Gary Kramlich <grim@pidgin.im>
parents: 9185
diff changeset
336 #define gtk_imhtml_append_text(imhtml, text, options) \
a446c1ba05ee [gaim-migrate @ 10115]
Gary Kramlich <grim@pidgin.im>
parents: 9185
diff changeset
337 gtk_imhtml_append_text_with_images(imhtml, text, options, NULL)
6982
12f08de92674 [gaim-migrate @ 7538]
Mark Doliner <markdoliner@pidgin.im>
parents: 6814
diff changeset
338
9033
5095532375ba [gaim-migrate @ 9809]
Kevin Stange <kstange@pidgin.im>
parents: 9029
diff changeset
339 /**
10814
7e17cb56b019 [gaim-migrate @ 12468]
Luke Schierer <lschiere@pidgin.im>
parents: 10799
diff changeset
340 * Appends HTML formatted text to a GTK+ IM/HTML.
9033
5095532375ba [gaim-migrate @ 9809]
Kevin Stange <kstange@pidgin.im>
parents: 9029
diff changeset
341 *
10814
7e17cb56b019 [gaim-migrate @ 12468]
Luke Schierer <lschiere@pidgin.im>
parents: 10799
diff changeset
342 * @param imhtml The GTK+ IM/HTML.
9033
5095532375ba [gaim-migrate @ 9809]
Kevin Stange <kstange@pidgin.im>
parents: 9029
diff changeset
343 * @param text The formatted text to append.
5095532375ba [gaim-migrate @ 9809]
Kevin Stange <kstange@pidgin.im>
parents: 9029
diff changeset
344 * @param options A GtkIMHtmlOptions object indicating insert behavior.
9185
1f1bce2f56c3 [gaim-migrate @ 9980]
Kevin Stange <kstange@pidgin.im>
parents: 9041
diff changeset
345 * @param unused Use @c NULL value.
9033
5095532375ba [gaim-migrate @ 9809]
Kevin Stange <kstange@pidgin.im>
parents: 9029
diff changeset
346 */
5095532375ba [gaim-migrate @ 9809]
Kevin Stange <kstange@pidgin.im>
parents: 9029
diff changeset
347 void gtk_imhtml_append_text_with_images(GtkIMHtml *imhtml,
5095532375ba [gaim-migrate @ 9809]
Kevin Stange <kstange@pidgin.im>
parents: 9029
diff changeset
348 const gchar *text,
5095532375ba [gaim-migrate @ 9809]
Kevin Stange <kstange@pidgin.im>
parents: 9029
diff changeset
349 GtkIMHtmlOptions options,
5095532375ba [gaim-migrate @ 9809]
Kevin Stange <kstange@pidgin.im>
parents: 9029
diff changeset
350 GSList *unused);
5095532375ba [gaim-migrate @ 9809]
Kevin Stange <kstange@pidgin.im>
parents: 9029
diff changeset
351
5095532375ba [gaim-migrate @ 9809]
Kevin Stange <kstange@pidgin.im>
parents: 9029
diff changeset
352 /**
10814
7e17cb56b019 [gaim-migrate @ 12468]
Luke Schierer <lschiere@pidgin.im>
parents: 10799
diff changeset
353 * Inserts HTML formatted text to a GTK+ IM/HTML at a given iter.
9033
5095532375ba [gaim-migrate @ 9809]
Kevin Stange <kstange@pidgin.im>
parents: 9029
diff changeset
354 *
10814
7e17cb56b019 [gaim-migrate @ 12468]
Luke Schierer <lschiere@pidgin.im>
parents: 10799
diff changeset
355 * @param imhtml The GTK+ IM/HTML.
9033
5095532375ba [gaim-migrate @ 9809]
Kevin Stange <kstange@pidgin.im>
parents: 9029
diff changeset
356 * @param text The formatted text to append.
5095532375ba [gaim-migrate @ 9809]
Kevin Stange <kstange@pidgin.im>
parents: 9029
diff changeset
357 * @param options A GtkIMHtmlOptions object indicating insert behavior.
10814
7e17cb56b019 [gaim-migrate @ 12468]
Luke Schierer <lschiere@pidgin.im>
parents: 10799
diff changeset
358 * @param iter A GtkTextIter in the GTK+ IM/HTML at which to insert text.
9033
5095532375ba [gaim-migrate @ 9809]
Kevin Stange <kstange@pidgin.im>
parents: 9029
diff changeset
359 */
8677
18b494207322 [gaim-migrate @ 9430]
Tim Ringenbach <marv@pidgin.im>
parents: 8519
diff changeset
360 void gtk_imhtml_insert_html_at_iter(GtkIMHtml *imhtml,
18b494207322 [gaim-migrate @ 9430]
Tim Ringenbach <marv@pidgin.im>
parents: 8519
diff changeset
361 const gchar *text,
18b494207322 [gaim-migrate @ 9430]
Tim Ringenbach <marv@pidgin.im>
parents: 8519
diff changeset
362 GtkIMHtmlOptions options,
18b494207322 [gaim-migrate @ 9430]
Tim Ringenbach <marv@pidgin.im>
parents: 8519
diff changeset
363 GtkTextIter *iter);
9033
5095532375ba [gaim-migrate @ 9809]
Kevin Stange <kstange@pidgin.im>
parents: 9029
diff changeset
364
5095532375ba [gaim-migrate @ 9809]
Kevin Stange <kstange@pidgin.im>
parents: 9029
diff changeset
365 /**
10814
7e17cb56b019 [gaim-migrate @ 12468]
Luke Schierer <lschiere@pidgin.im>
parents: 10799
diff changeset
366 * Scrolls a GTK+ IM/HTML to the end of its contents.
9033
5095532375ba [gaim-migrate @ 9809]
Kevin Stange <kstange@pidgin.im>
parents: 9029
diff changeset
367 *
10814
7e17cb56b019 [gaim-migrate @ 12468]
Luke Schierer <lschiere@pidgin.im>
parents: 10799
diff changeset
368 * @param imhtml The GTK+ IM/HTML.
12557
6c318efafe32 [gaim-migrate @ 14876]
Richard Laager <rlaager@pidgin.im>
parents: 12553
diff changeset
369 * @param smooth A boolean indicating if smooth scrolling should be used.
9033
5095532375ba [gaim-migrate @ 9809]
Kevin Stange <kstange@pidgin.im>
parents: 9029
diff changeset
370 */
12553
52b3403a1690 [gaim-migrate @ 14871]
Nathan Walp <nwalp@pidgin.im>
parents: 12335
diff changeset
371 void gtk_imhtml_scroll_to_end(GtkIMHtml *imhtml, gboolean smooth);
9033
5095532375ba [gaim-migrate @ 9809]
Kevin Stange <kstange@pidgin.im>
parents: 9029
diff changeset
372
5095532375ba [gaim-migrate @ 9809]
Kevin Stange <kstange@pidgin.im>
parents: 9029
diff changeset
373 /**
11224
04c1712bb953 [gaim-migrate @ 13360]
Daniel Atallah <datallah@pidgin.im>
parents: 10814
diff changeset
374 * Delete the contents of a GTK+ IM/HTML between start and end.
04c1712bb953 [gaim-migrate @ 13360]
Daniel Atallah <datallah@pidgin.im>
parents: 10814
diff changeset
375 *
04c1712bb953 [gaim-migrate @ 13360]
Daniel Atallah <datallah@pidgin.im>
parents: 10814
diff changeset
376 * @param imhtml The GTK+ IM/HTML.
04c1712bb953 [gaim-migrate @ 13360]
Daniel Atallah <datallah@pidgin.im>
parents: 10814
diff changeset
377 * @param start a postition in the imhtml's buffer
04c1712bb953 [gaim-migrate @ 13360]
Daniel Atallah <datallah@pidgin.im>
parents: 10814
diff changeset
378 * @param end another postition in the imhtml's buffer
04c1712bb953 [gaim-migrate @ 13360]
Daniel Atallah <datallah@pidgin.im>
parents: 10814
diff changeset
379 */
04c1712bb953 [gaim-migrate @ 13360]
Daniel Atallah <datallah@pidgin.im>
parents: 10814
diff changeset
380 void gtk_imhtml_delete(GtkIMHtml *imhtml, GtkTextIter *start, GtkTextIter *end);
04c1712bb953 [gaim-migrate @ 13360]
Daniel Atallah <datallah@pidgin.im>
parents: 10814
diff changeset
381
04c1712bb953 [gaim-migrate @ 13360]
Daniel Atallah <datallah@pidgin.im>
parents: 10814
diff changeset
382 /**
10814
7e17cb56b019 [gaim-migrate @ 12468]
Luke Schierer <lschiere@pidgin.im>
parents: 10799
diff changeset
383 * Purges the contents from a GTK+ IM/HTML and resets formatting.
9033
5095532375ba [gaim-migrate @ 9809]
Kevin Stange <kstange@pidgin.im>
parents: 9029
diff changeset
384 *
10814
7e17cb56b019 [gaim-migrate @ 12468]
Luke Schierer <lschiere@pidgin.im>
parents: 10799
diff changeset
385 * @param imhtml The GTK+ IM/HTML.
9033
5095532375ba [gaim-migrate @ 9809]
Kevin Stange <kstange@pidgin.im>
parents: 9029
diff changeset
386 */
11224
04c1712bb953 [gaim-migrate @ 13360]
Daniel Atallah <datallah@pidgin.im>
parents: 10814
diff changeset
387 #define gtk_imhtml_clear(imhtml) \
04c1712bb953 [gaim-migrate @ 13360]
Daniel Atallah <datallah@pidgin.im>
parents: 10814
diff changeset
388 gtk_imhtml_delete(imhtml, NULL, NULL)
4895
51794f61995e [gaim-migrate @ 5227]
Ka-Hing Cheung <khc@pidgin.im>
parents: 4764
diff changeset
389
9033
5095532375ba [gaim-migrate @ 9809]
Kevin Stange <kstange@pidgin.im>
parents: 9029
diff changeset
390 /**
10814
7e17cb56b019 [gaim-migrate @ 12468]
Luke Schierer <lschiere@pidgin.im>
parents: 10799
diff changeset
391 * Scrolls a GTK+ IM/HTML up by one page.
9033
5095532375ba [gaim-migrate @ 9809]
Kevin Stange <kstange@pidgin.im>
parents: 9029
diff changeset
392 *
10814
7e17cb56b019 [gaim-migrate @ 12468]
Luke Schierer <lschiere@pidgin.im>
parents: 10799
diff changeset
393 * @param imhtml The GTK+ IM/HTML.
9033
5095532375ba [gaim-migrate @ 9809]
Kevin Stange <kstange@pidgin.im>
parents: 9029
diff changeset
394 */
5095532375ba [gaim-migrate @ 9809]
Kevin Stange <kstange@pidgin.im>
parents: 9029
diff changeset
395 void gtk_imhtml_page_up(GtkIMHtml *imhtml);
5095532375ba [gaim-migrate @ 9809]
Kevin Stange <kstange@pidgin.im>
parents: 9029
diff changeset
396
5095532375ba [gaim-migrate @ 9809]
Kevin Stange <kstange@pidgin.im>
parents: 9029
diff changeset
397 /**
10814
7e17cb56b019 [gaim-migrate @ 12468]
Luke Schierer <lschiere@pidgin.im>
parents: 10799
diff changeset
398 * Scrolls a GTK+ IM/HTML down by one page.
9033
5095532375ba [gaim-migrate @ 9809]
Kevin Stange <kstange@pidgin.im>
parents: 9029
diff changeset
399 *
10814
7e17cb56b019 [gaim-migrate @ 12468]
Luke Schierer <lschiere@pidgin.im>
parents: 10799
diff changeset
400 * @param imhtml The GTK+ IM/HTML.
9033
5095532375ba [gaim-migrate @ 9809]
Kevin Stange <kstange@pidgin.im>
parents: 9029
diff changeset
401 */
5095532375ba [gaim-migrate @ 9809]
Kevin Stange <kstange@pidgin.im>
parents: 9029
diff changeset
402 void gtk_imhtml_page_down(GtkIMHtml *imhtml);
5095532375ba [gaim-migrate @ 9809]
Kevin Stange <kstange@pidgin.im>
parents: 9029
diff changeset
403
5095532375ba [gaim-migrate @ 9809]
Kevin Stange <kstange@pidgin.im>
parents: 9029
diff changeset
404 /**
10814
7e17cb56b019 [gaim-migrate @ 12468]
Luke Schierer <lschiere@pidgin.im>
parents: 10799
diff changeset
405 * Creates and returns an new GTK+ IM/HTML scalable object.
9033
5095532375ba [gaim-migrate @ 9809]
Kevin Stange <kstange@pidgin.im>
parents: 9029
diff changeset
406 *
5095532375ba [gaim-migrate @ 9809]
Kevin Stange <kstange@pidgin.im>
parents: 9029
diff changeset
407 * @return A new IM/HTML Scalable object.
5095532375ba [gaim-migrate @ 9809]
Kevin Stange <kstange@pidgin.im>
parents: 9029
diff changeset
408 */
12323
f52908fb23b0 [gaim-migrate @ 14627]
Richard Laager <rlaager@pidgin.im>
parents: 11814
diff changeset
409 GtkIMHtmlScalable *gtk_imhtml_scalable_new(void);
9033
5095532375ba [gaim-migrate @ 9809]
Kevin Stange <kstange@pidgin.im>
parents: 9029
diff changeset
410
5095532375ba [gaim-migrate @ 9809]
Kevin Stange <kstange@pidgin.im>
parents: 9029
diff changeset
411 /**
10814
7e17cb56b019 [gaim-migrate @ 12468]
Luke Schierer <lschiere@pidgin.im>
parents: 10799
diff changeset
412 * Creates and returns an new GTK+ IM/HTML scalable object with an image.
9033
5095532375ba [gaim-migrate @ 9809]
Kevin Stange <kstange@pidgin.im>
parents: 9029
diff changeset
413 *
5095532375ba [gaim-migrate @ 9809]
Kevin Stange <kstange@pidgin.im>
parents: 9029
diff changeset
414 * @param img A GdkPixbuf of the image to add.
5095532375ba [gaim-migrate @ 9809]
Kevin Stange <kstange@pidgin.im>
parents: 9029
diff changeset
415 * @param filename The filename to associate with the image.
5095532375ba [gaim-migrate @ 9809]
Kevin Stange <kstange@pidgin.im>
parents: 9029
diff changeset
416 * @param id The id to associate with the image.
5095532375ba [gaim-migrate @ 9809]
Kevin Stange <kstange@pidgin.im>
parents: 9029
diff changeset
417 *
5095532375ba [gaim-migrate @ 9809]
Kevin Stange <kstange@pidgin.im>
parents: 9029
diff changeset
418 * @return A new IM/HTML Scalable object with an image.
5095532375ba [gaim-migrate @ 9809]
Kevin Stange <kstange@pidgin.im>
parents: 9029
diff changeset
419 */
8962
5cd12e525d95 [gaim-migrate @ 9736]
Tim Ringenbach <marv@pidgin.im>
parents: 8881
diff changeset
420 GtkIMHtmlScalable *gtk_imhtml_image_new(GdkPixbuf *img, const gchar *filename, int id);
9033
5095532375ba [gaim-migrate @ 9809]
Kevin Stange <kstange@pidgin.im>
parents: 9029
diff changeset
421
5095532375ba [gaim-migrate @ 9809]
Kevin Stange <kstange@pidgin.im>
parents: 9029
diff changeset
422 /**
10814
7e17cb56b019 [gaim-migrate @ 12468]
Luke Schierer <lschiere@pidgin.im>
parents: 10799
diff changeset
423 * Destroys and frees a GTK+ IM/HTML scalable image.
9033
5095532375ba [gaim-migrate @ 9809]
Kevin Stange <kstange@pidgin.im>
parents: 9029
diff changeset
424 *
10814
7e17cb56b019 [gaim-migrate @ 12468]
Luke Schierer <lschiere@pidgin.im>
parents: 10799
diff changeset
425 * @param scale The GTK+ IM/HTML scalable.
9033
5095532375ba [gaim-migrate @ 9809]
Kevin Stange <kstange@pidgin.im>
parents: 9029
diff changeset
426 */
5095532375ba [gaim-migrate @ 9809]
Kevin Stange <kstange@pidgin.im>
parents: 9029
diff changeset
427 void gtk_imhtml_image_free(GtkIMHtmlScalable *scale);
4895
51794f61995e [gaim-migrate @ 5227]
Ka-Hing Cheung <khc@pidgin.im>
parents: 4764
diff changeset
428
9033
5095532375ba [gaim-migrate @ 9809]
Kevin Stange <kstange@pidgin.im>
parents: 9029
diff changeset
429 /**
10814
7e17cb56b019 [gaim-migrate @ 12468]
Luke Schierer <lschiere@pidgin.im>
parents: 10799
diff changeset
430 * Rescales a GTK+ IM/HTML scalable image to a given size.
9033
5095532375ba [gaim-migrate @ 9809]
Kevin Stange <kstange@pidgin.im>
parents: 9029
diff changeset
431 *
10814
7e17cb56b019 [gaim-migrate @ 12468]
Luke Schierer <lschiere@pidgin.im>
parents: 10799
diff changeset
432 * @param scale The GTK+ IM/HTML scalable.
9033
5095532375ba [gaim-migrate @ 9809]
Kevin Stange <kstange@pidgin.im>
parents: 9029
diff changeset
433 * @param width The new width.
5095532375ba [gaim-migrate @ 9809]
Kevin Stange <kstange@pidgin.im>
parents: 9029
diff changeset
434 * @param height The new height.
5095532375ba [gaim-migrate @ 9809]
Kevin Stange <kstange@pidgin.im>
parents: 9029
diff changeset
435 */
5095532375ba [gaim-migrate @ 9809]
Kevin Stange <kstange@pidgin.im>
parents: 9029
diff changeset
436 void gtk_imhtml_image_scale(GtkIMHtmlScalable *scale, int width, int height);
5095532375ba [gaim-migrate @ 9809]
Kevin Stange <kstange@pidgin.im>
parents: 9029
diff changeset
437
5095532375ba [gaim-migrate @ 9809]
Kevin Stange <kstange@pidgin.im>
parents: 9029
diff changeset
438 /**
10814
7e17cb56b019 [gaim-migrate @ 12468]
Luke Schierer <lschiere@pidgin.im>
parents: 10799
diff changeset
439 * Adds a GTK+ IM/HTML scalable image to a given GTK+ IM/HTML at a given iter.
9033
5095532375ba [gaim-migrate @ 9809]
Kevin Stange <kstange@pidgin.im>
parents: 9029
diff changeset
440 *
10814
7e17cb56b019 [gaim-migrate @ 12468]
Luke Schierer <lschiere@pidgin.im>
parents: 10799
diff changeset
441 * @param scale The GTK+ IM/HTML scalable.
7e17cb56b019 [gaim-migrate @ 12468]
Luke Schierer <lschiere@pidgin.im>
parents: 10799
diff changeset
442 * @param imhtml The GTK+ IM/HTML.
9033
5095532375ba [gaim-migrate @ 9809]
Kevin Stange <kstange@pidgin.im>
parents: 9029
diff changeset
443 * @param iter The GtkTextIter at which to add the scalable.
5095532375ba [gaim-migrate @ 9809]
Kevin Stange <kstange@pidgin.im>
parents: 9029
diff changeset
444 */
5095532375ba [gaim-migrate @ 9809]
Kevin Stange <kstange@pidgin.im>
parents: 9029
diff changeset
445 void gtk_imhtml_image_add_to(GtkIMHtmlScalable *scale, GtkIMHtml *imhtml, GtkTextIter *iter);
5095532375ba [gaim-migrate @ 9809]
Kevin Stange <kstange@pidgin.im>
parents: 9029
diff changeset
446
5095532375ba [gaim-migrate @ 9809]
Kevin Stange <kstange@pidgin.im>
parents: 9029
diff changeset
447 /**
10814
7e17cb56b019 [gaim-migrate @ 12468]
Luke Schierer <lschiere@pidgin.im>
parents: 10799
diff changeset
448 * Creates and returns an new GTK+ IM/HTML scalable with a horizontal rule.
9033
5095532375ba [gaim-migrate @ 9809]
Kevin Stange <kstange@pidgin.im>
parents: 9029
diff changeset
449 *
5095532375ba [gaim-migrate @ 9809]
Kevin Stange <kstange@pidgin.im>
parents: 9029
diff changeset
450 * @return A new IM/HTML Scalable object with an image.
5095532375ba [gaim-migrate @ 9809]
Kevin Stange <kstange@pidgin.im>
parents: 9029
diff changeset
451 */
12323
f52908fb23b0 [gaim-migrate @ 14627]
Richard Laager <rlaager@pidgin.im>
parents: 11814
diff changeset
452 GtkIMHtmlScalable *gtk_imhtml_hr_new(void);
9033
5095532375ba [gaim-migrate @ 9809]
Kevin Stange <kstange@pidgin.im>
parents: 9029
diff changeset
453
5095532375ba [gaim-migrate @ 9809]
Kevin Stange <kstange@pidgin.im>
parents: 9029
diff changeset
454 /**
10814
7e17cb56b019 [gaim-migrate @ 12468]
Luke Schierer <lschiere@pidgin.im>
parents: 10799
diff changeset
455 * Destroys and frees a GTK+ IM/HTML scalable horizontal rule.
9033
5095532375ba [gaim-migrate @ 9809]
Kevin Stange <kstange@pidgin.im>
parents: 9029
diff changeset
456 *
10814
7e17cb56b019 [gaim-migrate @ 12468]
Luke Schierer <lschiere@pidgin.im>
parents: 10799
diff changeset
457 * @param scale The GTK+ IM/HTML scalable.
9033
5095532375ba [gaim-migrate @ 9809]
Kevin Stange <kstange@pidgin.im>
parents: 9029
diff changeset
458 */
9034
c654478a62ee [gaim-migrate @ 9810]
Kevin Stange <kstange@pidgin.im>
parents: 9033
diff changeset
459 void gtk_imhtml_hr_free(GtkIMHtmlScalable *scale);
9033
5095532375ba [gaim-migrate @ 9809]
Kevin Stange <kstange@pidgin.im>
parents: 9029
diff changeset
460
5095532375ba [gaim-migrate @ 9809]
Kevin Stange <kstange@pidgin.im>
parents: 9029
diff changeset
461 /**
10814
7e17cb56b019 [gaim-migrate @ 12468]
Luke Schierer <lschiere@pidgin.im>
parents: 10799
diff changeset
462 * Rescales a GTK+ IM/HTML scalable horizontal rule to a given size.
9033
5095532375ba [gaim-migrate @ 9809]
Kevin Stange <kstange@pidgin.im>
parents: 9029
diff changeset
463 *
10814
7e17cb56b019 [gaim-migrate @ 12468]
Luke Schierer <lschiere@pidgin.im>
parents: 10799
diff changeset
464 * @param scale The GTK+ IM/HTML scalable.
9033
5095532375ba [gaim-migrate @ 9809]
Kevin Stange <kstange@pidgin.im>
parents: 9029
diff changeset
465 * @param width The new width.
5095532375ba [gaim-migrate @ 9809]
Kevin Stange <kstange@pidgin.im>
parents: 9029
diff changeset
466 * @param height The new height.
5095532375ba [gaim-migrate @ 9809]
Kevin Stange <kstange@pidgin.im>
parents: 9029
diff changeset
467 */
9034
c654478a62ee [gaim-migrate @ 9810]
Kevin Stange <kstange@pidgin.im>
parents: 9033
diff changeset
468 void gtk_imhtml_hr_scale(GtkIMHtmlScalable *scale, int width, int height);
4895
51794f61995e [gaim-migrate @ 5227]
Ka-Hing Cheung <khc@pidgin.im>
parents: 4764
diff changeset
469
9033
5095532375ba [gaim-migrate @ 9809]
Kevin Stange <kstange@pidgin.im>
parents: 9029
diff changeset
470 /**
10814
7e17cb56b019 [gaim-migrate @ 12468]
Luke Schierer <lschiere@pidgin.im>
parents: 10799
diff changeset
471 * Adds a GTK+ IM/HTML scalable horizontal rule to a given GTK+ IM/HTML at
9033
5095532375ba [gaim-migrate @ 9809]
Kevin Stange <kstange@pidgin.im>
parents: 9029
diff changeset
472 * a given iter.
5095532375ba [gaim-migrate @ 9809]
Kevin Stange <kstange@pidgin.im>
parents: 9029
diff changeset
473 *
10814
7e17cb56b019 [gaim-migrate @ 12468]
Luke Schierer <lschiere@pidgin.im>
parents: 10799
diff changeset
474 * @param scale The GTK+ IM/HTML scalable.
7e17cb56b019 [gaim-migrate @ 12468]
Luke Schierer <lschiere@pidgin.im>
parents: 10799
diff changeset
475 * @param imhtml The GTK+ IM/HTML.
9033
5095532375ba [gaim-migrate @ 9809]
Kevin Stange <kstange@pidgin.im>
parents: 9029
diff changeset
476 * @param iter The GtkTextIter at which to add the scalable.
5095532375ba [gaim-migrate @ 9809]
Kevin Stange <kstange@pidgin.im>
parents: 9029
diff changeset
477 */
9307
a446c1ba05ee [gaim-migrate @ 10115]
Gary Kramlich <grim@pidgin.im>
parents: 9185
diff changeset
478 void gtk_imhtml_hr_add_to(GtkIMHtmlScalable *scale, GtkIMHtml *imhtml, GtkTextIter *iter);
9033
5095532375ba [gaim-migrate @ 9809]
Kevin Stange <kstange@pidgin.im>
parents: 9029
diff changeset
479
5095532375ba [gaim-migrate @ 9809]
Kevin Stange <kstange@pidgin.im>
parents: 9029
diff changeset
480 /**
10814
7e17cb56b019 [gaim-migrate @ 12468]
Luke Schierer <lschiere@pidgin.im>
parents: 10799
diff changeset
481 * Finds and highlights a given string in a GTK+ IM/HTML.
9033
5095532375ba [gaim-migrate @ 9809]
Kevin Stange <kstange@pidgin.im>
parents: 9029
diff changeset
482 *
10814
7e17cb56b019 [gaim-migrate @ 12468]
Luke Schierer <lschiere@pidgin.im>
parents: 10799
diff changeset
483 * @param imhtml The GTK+ IM/HTML.
9033
5095532375ba [gaim-migrate @ 9809]
Kevin Stange <kstange@pidgin.im>
parents: 9029
diff changeset
484 * @param text The string to search for.
5095532375ba [gaim-migrate @ 9809]
Kevin Stange <kstange@pidgin.im>
parents: 9029
diff changeset
485 *
5095532375ba [gaim-migrate @ 9809]
Kevin Stange <kstange@pidgin.im>
parents: 9029
diff changeset
486 * @return @c TRUE if a search was performed, or @c FALSE if not.
5095532375ba [gaim-migrate @ 9809]
Kevin Stange <kstange@pidgin.im>
parents: 9029
diff changeset
487 */
7295
4b40d35a6b25 [gaim-migrate @ 7879]
Sean Egan <seanegan@pidgin.im>
parents: 6982
diff changeset
488 gboolean gtk_imhtml_search_find(GtkIMHtml *imhtml, const gchar *text);
9033
5095532375ba [gaim-migrate @ 9809]
Kevin Stange <kstange@pidgin.im>
parents: 9029
diff changeset
489
5095532375ba [gaim-migrate @ 9809]
Kevin Stange <kstange@pidgin.im>
parents: 9029
diff changeset
490 /**
10814
7e17cb56b019 [gaim-migrate @ 12468]
Luke Schierer <lschiere@pidgin.im>
parents: 10799
diff changeset
491 * Clears the highlighting from a prior search in a GTK+ IM/HTML.
9033
5095532375ba [gaim-migrate @ 9809]
Kevin Stange <kstange@pidgin.im>
parents: 9029
diff changeset
492 *
10814
7e17cb56b019 [gaim-migrate @ 12468]
Luke Schierer <lschiere@pidgin.im>
parents: 10799
diff changeset
493 * @param imhtml The GTK+ IM/HTML.
9033
5095532375ba [gaim-migrate @ 9809]
Kevin Stange <kstange@pidgin.im>
parents: 9029
diff changeset
494 */
7295
4b40d35a6b25 [gaim-migrate @ 7879]
Sean Egan <seanegan@pidgin.im>
parents: 6982
diff changeset
495 void gtk_imhtml_search_clear(GtkIMHtml *imhtml);
4895
51794f61995e [gaim-migrate @ 5227]
Ka-Hing Cheung <khc@pidgin.im>
parents: 4764
diff changeset
496
9033
5095532375ba [gaim-migrate @ 9809]
Kevin Stange <kstange@pidgin.im>
parents: 9029
diff changeset
497 /**
10814
7e17cb56b019 [gaim-migrate @ 12468]
Luke Schierer <lschiere@pidgin.im>
parents: 10799
diff changeset
498 * Enables or disables editing in a GTK+ IM/HTML.
9033
5095532375ba [gaim-migrate @ 9809]
Kevin Stange <kstange@pidgin.im>
parents: 9029
diff changeset
499 *
10814
7e17cb56b019 [gaim-migrate @ 12468]
Luke Schierer <lschiere@pidgin.im>
parents: 10799
diff changeset
500 * @param imhtml The GTK+ IM/HTML.
9033
5095532375ba [gaim-migrate @ 9809]
Kevin Stange <kstange@pidgin.im>
parents: 9029
diff changeset
501 * @param editable @c TRUE to make the widget editable, or @c FALSE otherwise.
5095532375ba [gaim-migrate @ 9809]
Kevin Stange <kstange@pidgin.im>
parents: 9029
diff changeset
502 */
8061
a765ea99b49f [gaim-migrate @ 8749]
Nathan Walp <nwalp@pidgin.im>
parents: 8046
diff changeset
503 void gtk_imhtml_set_editable(GtkIMHtml *imhtml, gboolean editable);
9033
5095532375ba [gaim-migrate @ 9809]
Kevin Stange <kstange@pidgin.im>
parents: 9029
diff changeset
504
5095532375ba [gaim-migrate @ 9809]
Kevin Stange <kstange@pidgin.im>
parents: 9029
diff changeset
505 /**
10814
7e17cb56b019 [gaim-migrate @ 12468]
Luke Schierer <lschiere@pidgin.im>
parents: 10799
diff changeset
506 * Enables or disables whole buffer formatting only (wbfo) in a GTK+ IM/HTML.
9033
5095532375ba [gaim-migrate @ 9809]
Kevin Stange <kstange@pidgin.im>
parents: 9029
diff changeset
507 * In this mode formatting options to the buffer take effect for the entire
5095532375ba [gaim-migrate @ 9809]
Kevin Stange <kstange@pidgin.im>
parents: 9029
diff changeset
508 * buffer instead of specific text.
5095532375ba [gaim-migrate @ 9809]
Kevin Stange <kstange@pidgin.im>
parents: 9029
diff changeset
509 *
10814
7e17cb56b019 [gaim-migrate @ 12468]
Luke Schierer <lschiere@pidgin.im>
parents: 10799
diff changeset
510 * @param imhtml The GTK+ IM/HTML.
9033
5095532375ba [gaim-migrate @ 9809]
Kevin Stange <kstange@pidgin.im>
parents: 9029
diff changeset
511 * @param wbfo @c TRUE to enable the mode, or @c FALSE otherwise.
5095532375ba [gaim-migrate @ 9809]
Kevin Stange <kstange@pidgin.im>
parents: 9029
diff changeset
512 */
8677
18b494207322 [gaim-migrate @ 9430]
Tim Ringenbach <marv@pidgin.im>
parents: 8519
diff changeset
513 void gtk_imhtml_set_whole_buffer_formatting_only(GtkIMHtml *imhtml, gboolean wbfo);
9033
5095532375ba [gaim-migrate @ 9809]
Kevin Stange <kstange@pidgin.im>
parents: 9029
diff changeset
514
5095532375ba [gaim-migrate @ 9809]
Kevin Stange <kstange@pidgin.im>
parents: 9029
diff changeset
515 /**
10814
7e17cb56b019 [gaim-migrate @ 12468]
Luke Schierer <lschiere@pidgin.im>
parents: 10799
diff changeset
516 * Indicates which formatting functions to enable and disable in a GTK+ IM/HTML.
9033
5095532375ba [gaim-migrate @ 9809]
Kevin Stange <kstange@pidgin.im>
parents: 9029
diff changeset
517 *
10814
7e17cb56b019 [gaim-migrate @ 12468]
Luke Schierer <lschiere@pidgin.im>
parents: 10799
diff changeset
518 * @param imhtml The GTK+ IM/HTML.
9185
1f1bce2f56c3 [gaim-migrate @ 9980]
Kevin Stange <kstange@pidgin.im>
parents: 9041
diff changeset
519 * @param buttons A GtkIMHtmlButtons bitmask indicating which functions to use.
9033
5095532375ba [gaim-migrate @ 9809]
Kevin Stange <kstange@pidgin.im>
parents: 9029
diff changeset
520 */
8420
71d59c4e2beb [gaim-migrate @ 9150]
Sean Egan <seanegan@pidgin.im>
parents: 8105
diff changeset
521 void gtk_imhtml_set_format_functions(GtkIMHtml *imhtml, GtkIMHtmlButtons buttons);
9033
5095532375ba [gaim-migrate @ 9809]
Kevin Stange <kstange@pidgin.im>
parents: 9029
diff changeset
522
5095532375ba [gaim-migrate @ 9809]
Kevin Stange <kstange@pidgin.im>
parents: 9029
diff changeset
523 /**
10814
7e17cb56b019 [gaim-migrate @ 12468]
Luke Schierer <lschiere@pidgin.im>
parents: 10799
diff changeset
524 * Returns which formatting functions are enabled in a GTK+ IM/HTML.
9033
5095532375ba [gaim-migrate @ 9809]
Kevin Stange <kstange@pidgin.im>
parents: 9029
diff changeset
525 *
10814
7e17cb56b019 [gaim-migrate @ 12468]
Luke Schierer <lschiere@pidgin.im>
parents: 10799
diff changeset
526 * @param imhtml The GTK+ IM/HTML.
9033
5095532375ba [gaim-migrate @ 9809]
Kevin Stange <kstange@pidgin.im>
parents: 9029
diff changeset
527 *
9185
1f1bce2f56c3 [gaim-migrate @ 9980]
Kevin Stange <kstange@pidgin.im>
parents: 9041
diff changeset
528 * @return A GtkIMHtmlButtons bitmask indicating which functions to are enabled.
9033
5095532375ba [gaim-migrate @ 9809]
Kevin Stange <kstange@pidgin.im>
parents: 9029
diff changeset
529 */
8788
a13634443a38 [gaim-migrate @ 9550]
Mark Doliner <markdoliner@pidgin.im>
parents: 8740
diff changeset
530 GtkIMHtmlButtons gtk_imhtml_get_format_functions(GtkIMHtml *imhtml);
9033
5095532375ba [gaim-migrate @ 9809]
Kevin Stange <kstange@pidgin.im>
parents: 9029
diff changeset
531
5095532375ba [gaim-migrate @ 9809]
Kevin Stange <kstange@pidgin.im>
parents: 9029
diff changeset
532 /**
12900
7fe519669e07 [gaim-migrate @ 15253]
Richard Laager <rlaager@pidgin.im>
parents: 12557
diff changeset
533 * Sets each boolean to @c TRUE or @c FALSE to indicate if that formatting option
7fe519669e07 [gaim-migrate @ 15253]
Richard Laager <rlaager@pidgin.im>
parents: 12557
diff changeset
534 * is enabled at the current position in a GTK+ IM/HTML.
9033
5095532375ba [gaim-migrate @ 9809]
Kevin Stange <kstange@pidgin.im>
parents: 9029
diff changeset
535 *
10814
7e17cb56b019 [gaim-migrate @ 12468]
Luke Schierer <lschiere@pidgin.im>
parents: 10799
diff changeset
536 * @param imhtml The GTK+ IM/HTML.
12900
7fe519669e07 [gaim-migrate @ 15253]
Richard Laager <rlaager@pidgin.im>
parents: 12557
diff changeset
537 * @param bold The boolean to set for bold or @c NULL.
7fe519669e07 [gaim-migrate @ 15253]
Richard Laager <rlaager@pidgin.im>
parents: 12557
diff changeset
538 * @param italic The boolean to set for italic or @c NULL.
7fe519669e07 [gaim-migrate @ 15253]
Richard Laager <rlaager@pidgin.im>
parents: 12557
diff changeset
539 * @param underline The boolean to set for underline or @c NULL.
9033
5095532375ba [gaim-migrate @ 9809]
Kevin Stange <kstange@pidgin.im>
parents: 9029
diff changeset
540 */
8516
a29b503cdfa0 [gaim-migrate @ 9254]
Gary Kramlich <grim@pidgin.im>
parents: 8506
diff changeset
541 void gtk_imhtml_get_current_format(GtkIMHtml *imhtml, gboolean *bold, gboolean *italic, gboolean *underline);
9033
5095532375ba [gaim-migrate @ 9809]
Kevin Stange <kstange@pidgin.im>
parents: 9029
diff changeset
542
5095532375ba [gaim-migrate @ 9809]
Kevin Stange <kstange@pidgin.im>
parents: 9029
diff changeset
543 /**
5095532375ba [gaim-migrate @ 9809]
Kevin Stange <kstange@pidgin.im>
parents: 9029
diff changeset
544 * Returns a string containing the selected font face at the current position
10814
7e17cb56b019 [gaim-migrate @ 12468]
Luke Schierer <lschiere@pidgin.im>
parents: 10799
diff changeset
545 * in a GTK+ IM/HTML.
9033
5095532375ba [gaim-migrate @ 9809]
Kevin Stange <kstange@pidgin.im>
parents: 9029
diff changeset
546 *
10814
7e17cb56b019 [gaim-migrate @ 12468]
Luke Schierer <lschiere@pidgin.im>
parents: 10799
diff changeset
547 * @param imhtml The GTK+ IM/HTML.
9033
5095532375ba [gaim-migrate @ 9809]
Kevin Stange <kstange@pidgin.im>
parents: 9029
diff changeset
548 *
5095532375ba [gaim-migrate @ 9809]
Kevin Stange <kstange@pidgin.im>
parents: 9029
diff changeset
549 * @return A string containg the font face or @c NULL if none is set.
5095532375ba [gaim-migrate @ 9809]
Kevin Stange <kstange@pidgin.im>
parents: 9029
diff changeset
550 */
9025
e49a72896270 [gaim-migrate @ 9801]
Luke Schierer <lschiere@pidgin.im>
parents: 8962
diff changeset
551 char *gtk_imhtml_get_current_fontface(GtkIMHtml *imhtml);
9033
5095532375ba [gaim-migrate @ 9809]
Kevin Stange <kstange@pidgin.im>
parents: 9029
diff changeset
552
5095532375ba [gaim-migrate @ 9809]
Kevin Stange <kstange@pidgin.im>
parents: 9029
diff changeset
553 /**
5095532375ba [gaim-migrate @ 9809]
Kevin Stange <kstange@pidgin.im>
parents: 9029
diff changeset
554 * Returns a string containing the selected foreground color at the current
10814
7e17cb56b019 [gaim-migrate @ 12468]
Luke Schierer <lschiere@pidgin.im>
parents: 10799
diff changeset
555 * position in a GTK+ IM/HTML.
9033
5095532375ba [gaim-migrate @ 9809]
Kevin Stange <kstange@pidgin.im>
parents: 9029
diff changeset
556 *
10814
7e17cb56b019 [gaim-migrate @ 12468]
Luke Schierer <lschiere@pidgin.im>
parents: 10799
diff changeset
557 * @param imhtml The GTK+ IM/HTML.
9033
5095532375ba [gaim-migrate @ 9809]
Kevin Stange <kstange@pidgin.im>
parents: 9029
diff changeset
558 *
5095532375ba [gaim-migrate @ 9809]
Kevin Stange <kstange@pidgin.im>
parents: 9029
diff changeset
559 * @return A string containg the foreground color or @c NULL if none is set.
5095532375ba [gaim-migrate @ 9809]
Kevin Stange <kstange@pidgin.im>
parents: 9029
diff changeset
560 */
9025
e49a72896270 [gaim-migrate @ 9801]
Luke Schierer <lschiere@pidgin.im>
parents: 8962
diff changeset
561 char *gtk_imhtml_get_current_forecolor(GtkIMHtml *imhtml);
9033
5095532375ba [gaim-migrate @ 9809]
Kevin Stange <kstange@pidgin.im>
parents: 9029
diff changeset
562
5095532375ba [gaim-migrate @ 9809]
Kevin Stange <kstange@pidgin.im>
parents: 9029
diff changeset
563 /**
10776
b474d64f94ac [gaim-migrate @ 12387]
Tim Ringenbach <marv@pidgin.im>
parents: 10692
diff changeset
564 * Returns a string containing the selected font background color at the current
10814
7e17cb56b019 [gaim-migrate @ 12468]
Luke Schierer <lschiere@pidgin.im>
parents: 10799
diff changeset
565 * position in a GTK+ IM/HTML.
10776
b474d64f94ac [gaim-migrate @ 12387]
Tim Ringenbach <marv@pidgin.im>
parents: 10692
diff changeset
566 *
10814
7e17cb56b019 [gaim-migrate @ 12468]
Luke Schierer <lschiere@pidgin.im>
parents: 10799
diff changeset
567 * @param imhtml The GTK+ IM/HTML.
10776
b474d64f94ac [gaim-migrate @ 12387]
Tim Ringenbach <marv@pidgin.im>
parents: 10692
diff changeset
568 *
b474d64f94ac [gaim-migrate @ 12387]
Tim Ringenbach <marv@pidgin.im>
parents: 10692
diff changeset
569 * @return A string containg the font background color or @c NULL if none is set.
b474d64f94ac [gaim-migrate @ 12387]
Tim Ringenbach <marv@pidgin.im>
parents: 10692
diff changeset
570 */
b474d64f94ac [gaim-migrate @ 12387]
Tim Ringenbach <marv@pidgin.im>
parents: 10692
diff changeset
571 char *gtk_imhtml_get_current_backcolor(GtkIMHtml *imhtml);
b474d64f94ac [gaim-migrate @ 12387]
Tim Ringenbach <marv@pidgin.im>
parents: 10692
diff changeset
572
b474d64f94ac [gaim-migrate @ 12387]
Tim Ringenbach <marv@pidgin.im>
parents: 10692
diff changeset
573 /**
9033
5095532375ba [gaim-migrate @ 9809]
Kevin Stange <kstange@pidgin.im>
parents: 9029
diff changeset
574 * Returns a string containing the selected background color at the current
10814
7e17cb56b019 [gaim-migrate @ 12468]
Luke Schierer <lschiere@pidgin.im>
parents: 10799
diff changeset
575 * position in a GTK+ IM/HTML.
9033
5095532375ba [gaim-migrate @ 9809]
Kevin Stange <kstange@pidgin.im>
parents: 9029
diff changeset
576 *
10814
7e17cb56b019 [gaim-migrate @ 12468]
Luke Schierer <lschiere@pidgin.im>
parents: 10799
diff changeset
577 * @param imhtml The GTK+ IM/HTML.
9033
5095532375ba [gaim-migrate @ 9809]
Kevin Stange <kstange@pidgin.im>
parents: 9029
diff changeset
578 *
5095532375ba [gaim-migrate @ 9809]
Kevin Stange <kstange@pidgin.im>
parents: 9029
diff changeset
579 * @return A string containg the background color or @c NULL if none is set.
5095532375ba [gaim-migrate @ 9809]
Kevin Stange <kstange@pidgin.im>
parents: 9029
diff changeset
580 */
10776
b474d64f94ac [gaim-migrate @ 12387]
Tim Ringenbach <marv@pidgin.im>
parents: 10692
diff changeset
581 char *gtk_imhtml_get_current_background(GtkIMHtml *imhtml);
9033
5095532375ba [gaim-migrate @ 9809]
Kevin Stange <kstange@pidgin.im>
parents: 9029
diff changeset
582
5095532375ba [gaim-migrate @ 9809]
Kevin Stange <kstange@pidgin.im>
parents: 9029
diff changeset
583 /**
5095532375ba [gaim-migrate @ 9809]
Kevin Stange <kstange@pidgin.im>
parents: 9029
diff changeset
584 * Returns a integer containing the selected HTML font size at the current
10814
7e17cb56b019 [gaim-migrate @ 12468]
Luke Schierer <lschiere@pidgin.im>
parents: 10799
diff changeset
585 * position in a GTK+ IM/HTML.
9033
5095532375ba [gaim-migrate @ 9809]
Kevin Stange <kstange@pidgin.im>
parents: 9029
diff changeset
586 *
10814
7e17cb56b019 [gaim-migrate @ 12468]
Luke Schierer <lschiere@pidgin.im>
parents: 10799
diff changeset
587 * @param imhtml The GTK+ IM/HTML.
9033
5095532375ba [gaim-migrate @ 9809]
Kevin Stange <kstange@pidgin.im>
parents: 9029
diff changeset
588 *
5095532375ba [gaim-migrate @ 9809]
Kevin Stange <kstange@pidgin.im>
parents: 9029
diff changeset
589 * @return The HTML font size.
5095532375ba [gaim-migrate @ 9809]
Kevin Stange <kstange@pidgin.im>
parents: 9029
diff changeset
590 */
9025
e49a72896270 [gaim-migrate @ 9801]
Luke Schierer <lschiere@pidgin.im>
parents: 8962
diff changeset
591 gint gtk_imhtml_get_current_fontsize(GtkIMHtml *imhtml);
9033
5095532375ba [gaim-migrate @ 9809]
Kevin Stange <kstange@pidgin.im>
parents: 9029
diff changeset
592
5095532375ba [gaim-migrate @ 9809]
Kevin Stange <kstange@pidgin.im>
parents: 9029
diff changeset
593 /**
10814
7e17cb56b019 [gaim-migrate @ 12468]
Luke Schierer <lschiere@pidgin.im>
parents: 10799
diff changeset
594 * Checks whether a GTK+ IM/HTML is marked as editable.
9033
5095532375ba [gaim-migrate @ 9809]
Kevin Stange <kstange@pidgin.im>
parents: 9029
diff changeset
595 *
10814
7e17cb56b019 [gaim-migrate @ 12468]
Luke Schierer <lschiere@pidgin.im>
parents: 10799
diff changeset
596 * @param imhtml The GTK+ IM/HTML.
9033
5095532375ba [gaim-migrate @ 9809]
Kevin Stange <kstange@pidgin.im>
parents: 9029
diff changeset
597 *
5095532375ba [gaim-migrate @ 9809]
Kevin Stange <kstange@pidgin.im>
parents: 9029
diff changeset
598 * @return @c TRUE if the IM/HTML is editable, or @c FALSE otherwise.
5095532375ba [gaim-migrate @ 9809]
Kevin Stange <kstange@pidgin.im>
parents: 9029
diff changeset
599 */
8061
a765ea99b49f [gaim-migrate @ 8749]
Nathan Walp <nwalp@pidgin.im>
parents: 8046
diff changeset
600 gboolean gtk_imhtml_get_editable(GtkIMHtml *imhtml);
9033
5095532375ba [gaim-migrate @ 9809]
Kevin Stange <kstange@pidgin.im>
parents: 9029
diff changeset
601
5095532375ba [gaim-migrate @ 9809]
Kevin Stange <kstange@pidgin.im>
parents: 9029
diff changeset
602 /**
11269
ca63789d57b9 [gaim-migrate @ 13451]
Richard Laager <rlaager@pidgin.im>
parents: 11267
diff changeset
603 * Clear all the formatting on a GTK+ IM/HTML.
ca63789d57b9 [gaim-migrate @ 13451]
Richard Laager <rlaager@pidgin.im>
parents: 11267
diff changeset
604 *
ca63789d57b9 [gaim-migrate @ 13451]
Richard Laager <rlaager@pidgin.im>
parents: 11267
diff changeset
605 * @param imhtml The GTK+ IM/HTML.
ca63789d57b9 [gaim-migrate @ 13451]
Richard Laager <rlaager@pidgin.im>
parents: 11267
diff changeset
606 */
ca63789d57b9 [gaim-migrate @ 13451]
Richard Laager <rlaager@pidgin.im>
parents: 11267
diff changeset
607 void gtk_imhtml_clear_formatting(GtkIMHtml *imhtml);
ca63789d57b9 [gaim-migrate @ 13451]
Richard Laager <rlaager@pidgin.im>
parents: 11267
diff changeset
608
ca63789d57b9 [gaim-migrate @ 13451]
Richard Laager <rlaager@pidgin.im>
parents: 11267
diff changeset
609 /**
10814
7e17cb56b019 [gaim-migrate @ 12468]
Luke Schierer <lschiere@pidgin.im>
parents: 10799
diff changeset
610 * Toggles bold at the cursor location or selection in a GTK+ IM/HTML.
9033
5095532375ba [gaim-migrate @ 9809]
Kevin Stange <kstange@pidgin.im>
parents: 9029
diff changeset
611 *
10814
7e17cb56b019 [gaim-migrate @ 12468]
Luke Schierer <lschiere@pidgin.im>
parents: 10799
diff changeset
612 * @param imhtml The GTK+ IM/HTML.
9033
5095532375ba [gaim-migrate @ 9809]
Kevin Stange <kstange@pidgin.im>
parents: 9029
diff changeset
613 */
11267
78f1eb5b3d6e [gaim-migrate @ 13449]
Richard Laager <rlaager@pidgin.im>
parents: 11224
diff changeset
614 void gtk_imhtml_toggle_bold(GtkIMHtml *imhtml);
9033
5095532375ba [gaim-migrate @ 9809]
Kevin Stange <kstange@pidgin.im>
parents: 9029
diff changeset
615
5095532375ba [gaim-migrate @ 9809]
Kevin Stange <kstange@pidgin.im>
parents: 9029
diff changeset
616 /**
10814
7e17cb56b019 [gaim-migrate @ 12468]
Luke Schierer <lschiere@pidgin.im>
parents: 10799
diff changeset
617 * Toggles italic at the cursor location or selection in a GTK+ IM/HTML.
9033
5095532375ba [gaim-migrate @ 9809]
Kevin Stange <kstange@pidgin.im>
parents: 9029
diff changeset
618 *
10814
7e17cb56b019 [gaim-migrate @ 12468]
Luke Schierer <lschiere@pidgin.im>
parents: 10799
diff changeset
619 * @param imhtml The GTK+ IM/HTML.
9033
5095532375ba [gaim-migrate @ 9809]
Kevin Stange <kstange@pidgin.im>
parents: 9029
diff changeset
620 */
11267
78f1eb5b3d6e [gaim-migrate @ 13449]
Richard Laager <rlaager@pidgin.im>
parents: 11224
diff changeset
621 void gtk_imhtml_toggle_italic(GtkIMHtml *imhtml);
9033
5095532375ba [gaim-migrate @ 9809]
Kevin Stange <kstange@pidgin.im>
parents: 9029
diff changeset
622
5095532375ba [gaim-migrate @ 9809]
Kevin Stange <kstange@pidgin.im>
parents: 9029
diff changeset
623 /**
10814
7e17cb56b019 [gaim-migrate @ 12468]
Luke Schierer <lschiere@pidgin.im>
parents: 10799
diff changeset
624 * Toggles underline at the cursor location or selection in a GTK+ IM/HTML.
9033
5095532375ba [gaim-migrate @ 9809]
Kevin Stange <kstange@pidgin.im>
parents: 9029
diff changeset
625 *
10814
7e17cb56b019 [gaim-migrate @ 12468]
Luke Schierer <lschiere@pidgin.im>
parents: 10799
diff changeset
626 * @param imhtml The GTK+ IM/HTML.
9033
5095532375ba [gaim-migrate @ 9809]
Kevin Stange <kstange@pidgin.im>
parents: 9029
diff changeset
627 */
11267
78f1eb5b3d6e [gaim-migrate @ 13449]
Richard Laager <rlaager@pidgin.im>
parents: 11224
diff changeset
628 void gtk_imhtml_toggle_underline(GtkIMHtml *imhtml);
9033
5095532375ba [gaim-migrate @ 9809]
Kevin Stange <kstange@pidgin.im>
parents: 9029
diff changeset
629
5095532375ba [gaim-migrate @ 9809]
Kevin Stange <kstange@pidgin.im>
parents: 9029
diff changeset
630 /**
10814
7e17cb56b019 [gaim-migrate @ 12468]
Luke Schierer <lschiere@pidgin.im>
parents: 10799
diff changeset
631 * Toggles strikethrough at the cursor location or selection in a GTK+ IM/HTML.
9924
55cc2ac0bd3f [gaim-migrate @ 10816]
Tim Ringenbach <marv@pidgin.im>
parents: 9713
diff changeset
632 *
10814
7e17cb56b019 [gaim-migrate @ 12468]
Luke Schierer <lschiere@pidgin.im>
parents: 10799
diff changeset
633 * @param imhtml The GTK+ IM/HTML.
9924
55cc2ac0bd3f [gaim-migrate @ 10816]
Tim Ringenbach <marv@pidgin.im>
parents: 9713
diff changeset
634 */
11267
78f1eb5b3d6e [gaim-migrate @ 13449]
Richard Laager <rlaager@pidgin.im>
parents: 11224
diff changeset
635 void gtk_imhtml_toggle_strike(GtkIMHtml *imhtml);
9924
55cc2ac0bd3f [gaim-migrate @ 10816]
Tim Ringenbach <marv@pidgin.im>
parents: 9713
diff changeset
636
55cc2ac0bd3f [gaim-migrate @ 10816]
Tim Ringenbach <marv@pidgin.im>
parents: 9713
diff changeset
637 /**
9033
5095532375ba [gaim-migrate @ 9809]
Kevin Stange <kstange@pidgin.im>
parents: 9029
diff changeset
638 * Toggles a foreground color at the current location or selection in a GTK
5095532375ba [gaim-migrate @ 9809]
Kevin Stange <kstange@pidgin.im>
parents: 9029
diff changeset
639 * IM/HTML.
5095532375ba [gaim-migrate @ 9809]
Kevin Stange <kstange@pidgin.im>
parents: 9029
diff changeset
640 *
10814
7e17cb56b019 [gaim-migrate @ 12468]
Luke Schierer <lschiere@pidgin.im>
parents: 10799
diff changeset
641 * @param imhtml The GTK+ IM/HTML.
9185
1f1bce2f56c3 [gaim-migrate @ 9980]
Kevin Stange <kstange@pidgin.im>
parents: 9041
diff changeset
642 * @param color The HTML-style color, or @c NULL or "" to clear the color.
9033
5095532375ba [gaim-migrate @ 9809]
Kevin Stange <kstange@pidgin.im>
parents: 9029
diff changeset
643 *
5095532375ba [gaim-migrate @ 9809]
Kevin Stange <kstange@pidgin.im>
parents: 9029
diff changeset
644 * @return @c TRUE if a color was set, or @c FALSE if it was cleared.
5095532375ba [gaim-migrate @ 9809]
Kevin Stange <kstange@pidgin.im>
parents: 9029
diff changeset
645 */
8061
a765ea99b49f [gaim-migrate @ 8749]
Nathan Walp <nwalp@pidgin.im>
parents: 8046
diff changeset
646 gboolean gtk_imhtml_toggle_forecolor(GtkIMHtml *imhtml, const char *color);
9033
5095532375ba [gaim-migrate @ 9809]
Kevin Stange <kstange@pidgin.im>
parents: 9029
diff changeset
647
5095532375ba [gaim-migrate @ 9809]
Kevin Stange <kstange@pidgin.im>
parents: 9029
diff changeset
648 /**
5095532375ba [gaim-migrate @ 9809]
Kevin Stange <kstange@pidgin.im>
parents: 9029
diff changeset
649 * Toggles a background color at the current location or selection in a GTK
5095532375ba [gaim-migrate @ 9809]
Kevin Stange <kstange@pidgin.im>
parents: 9029
diff changeset
650 * IM/HTML.
5095532375ba [gaim-migrate @ 9809]
Kevin Stange <kstange@pidgin.im>
parents: 9029
diff changeset
651 *
10814
7e17cb56b019 [gaim-migrate @ 12468]
Luke Schierer <lschiere@pidgin.im>
parents: 10799
diff changeset
652 * @param imhtml The GTK+ IM/HTML.
9185
1f1bce2f56c3 [gaim-migrate @ 9980]
Kevin Stange <kstange@pidgin.im>
parents: 9041
diff changeset
653 * @param color The HTML-style color, or @c NULL or "" to clear the color.
9033
5095532375ba [gaim-migrate @ 9809]
Kevin Stange <kstange@pidgin.im>
parents: 9029
diff changeset
654 *
5095532375ba [gaim-migrate @ 9809]
Kevin Stange <kstange@pidgin.im>
parents: 9029
diff changeset
655 * @return @c TRUE if a color was set, or @c FALSE if it was cleared.
5095532375ba [gaim-migrate @ 9809]
Kevin Stange <kstange@pidgin.im>
parents: 9029
diff changeset
656 */
8061
a765ea99b49f [gaim-migrate @ 8749]
Nathan Walp <nwalp@pidgin.im>
parents: 8046
diff changeset
657 gboolean gtk_imhtml_toggle_backcolor(GtkIMHtml *imhtml, const char *color);
9033
5095532375ba [gaim-migrate @ 9809]
Kevin Stange <kstange@pidgin.im>
parents: 9029
diff changeset
658
5095532375ba [gaim-migrate @ 9809]
Kevin Stange <kstange@pidgin.im>
parents: 9029
diff changeset
659 /**
10776
b474d64f94ac [gaim-migrate @ 12387]
Tim Ringenbach <marv@pidgin.im>
parents: 10692
diff changeset
660 * Toggles a background color at the current location or selection in a GTK
b474d64f94ac [gaim-migrate @ 12387]
Tim Ringenbach <marv@pidgin.im>
parents: 10692
diff changeset
661 * IM/HTML.
b474d64f94ac [gaim-migrate @ 12387]
Tim Ringenbach <marv@pidgin.im>
parents: 10692
diff changeset
662 *
10814
7e17cb56b019 [gaim-migrate @ 12468]
Luke Schierer <lschiere@pidgin.im>
parents: 10799
diff changeset
663 * @param imhtml The GTK+ IM/HTML.
10776
b474d64f94ac [gaim-migrate @ 12387]
Tim Ringenbach <marv@pidgin.im>
parents: 10692
diff changeset
664 * @param color The HTML-style color, or @c NULL or "" to clear the color.
b474d64f94ac [gaim-migrate @ 12387]
Tim Ringenbach <marv@pidgin.im>
parents: 10692
diff changeset
665 *
b474d64f94ac [gaim-migrate @ 12387]
Tim Ringenbach <marv@pidgin.im>
parents: 10692
diff changeset
666 * @return @c TRUE if a color was set, or @c FALSE if it was cleared.
b474d64f94ac [gaim-migrate @ 12387]
Tim Ringenbach <marv@pidgin.im>
parents: 10692
diff changeset
667 */
b474d64f94ac [gaim-migrate @ 12387]
Tim Ringenbach <marv@pidgin.im>
parents: 10692
diff changeset
668 gboolean gtk_imhtml_toggle_background(GtkIMHtml *imhtml, const char *color);
b474d64f94ac [gaim-migrate @ 12387]
Tim Ringenbach <marv@pidgin.im>
parents: 10692
diff changeset
669
b474d64f94ac [gaim-migrate @ 12387]
Tim Ringenbach <marv@pidgin.im>
parents: 10692
diff changeset
670 /**
10814
7e17cb56b019 [gaim-migrate @ 12468]
Luke Schierer <lschiere@pidgin.im>
parents: 10799
diff changeset
671 * Toggles a font face at the current location or selection in a GTK+ IM/HTML.
9033
5095532375ba [gaim-migrate @ 9809]
Kevin Stange <kstange@pidgin.im>
parents: 9029
diff changeset
672 *
10814
7e17cb56b019 [gaim-migrate @ 12468]
Luke Schierer <lschiere@pidgin.im>
parents: 10799
diff changeset
673 * @param imhtml The GTK+ IM/HTML.
9185
1f1bce2f56c3 [gaim-migrate @ 9980]
Kevin Stange <kstange@pidgin.im>
parents: 9041
diff changeset
674 * @param face The font face name, or @c NULL or "" to clear the font.
9033
5095532375ba [gaim-migrate @ 9809]
Kevin Stange <kstange@pidgin.im>
parents: 9029
diff changeset
675 *
5095532375ba [gaim-migrate @ 9809]
Kevin Stange <kstange@pidgin.im>
parents: 9029
diff changeset
676 * @return @c TRUE if a font name was set, or @c FALSE if it was cleared.
5095532375ba [gaim-migrate @ 9809]
Kevin Stange <kstange@pidgin.im>
parents: 9029
diff changeset
677 */
8061
a765ea99b49f [gaim-migrate @ 8749]
Nathan Walp <nwalp@pidgin.im>
parents: 8046
diff changeset
678 gboolean gtk_imhtml_toggle_fontface(GtkIMHtml *imhtml, const char *face);
9033
5095532375ba [gaim-migrate @ 9809]
Kevin Stange <kstange@pidgin.im>
parents: 9029
diff changeset
679
5095532375ba [gaim-migrate @ 9809]
Kevin Stange <kstange@pidgin.im>
parents: 9029
diff changeset
680 /**
5095532375ba [gaim-migrate @ 9809]
Kevin Stange <kstange@pidgin.im>
parents: 9029
diff changeset
681 * Toggles a link tag with the given URL at the current location or selection
10814
7e17cb56b019 [gaim-migrate @ 12468]
Luke Schierer <lschiere@pidgin.im>
parents: 10799
diff changeset
682 * in a GTK+ IM/HTML.
9033
5095532375ba [gaim-migrate @ 9809]
Kevin Stange <kstange@pidgin.im>
parents: 9029
diff changeset
683 *
10814
7e17cb56b019 [gaim-migrate @ 12468]
Luke Schierer <lschiere@pidgin.im>
parents: 10799
diff changeset
684 * @param imhtml The GTK+ IM/HTML.
9185
1f1bce2f56c3 [gaim-migrate @ 9980]
Kevin Stange <kstange@pidgin.im>
parents: 9041
diff changeset
685 * @param url The URL for the link or @c NULL to terminate the link.
9033
5095532375ba [gaim-migrate @ 9809]
Kevin Stange <kstange@pidgin.im>
parents: 9029
diff changeset
686 */
8677
18b494207322 [gaim-migrate @ 9430]
Tim Ringenbach <marv@pidgin.im>
parents: 8519
diff changeset
687 void gtk_imhtml_toggle_link(GtkIMHtml *imhtml, const char *url);
9033
5095532375ba [gaim-migrate @ 9809]
Kevin Stange <kstange@pidgin.im>
parents: 9029
diff changeset
688
5095532375ba [gaim-migrate @ 9809]
Kevin Stange <kstange@pidgin.im>
parents: 9029
diff changeset
689 /**
10814
7e17cb56b019 [gaim-migrate @ 12468]
Luke Schierer <lschiere@pidgin.im>
parents: 10799
diff changeset
690 * Inserts a link to the given url at the given GtkTextMark in a GTK+ IM/HTML.
9033
5095532375ba [gaim-migrate @ 9809]
Kevin Stange <kstange@pidgin.im>
parents: 9029
diff changeset
691 *
10814
7e17cb56b019 [gaim-migrate @ 12468]
Luke Schierer <lschiere@pidgin.im>
parents: 10799
diff changeset
692 * @param imhtml The GTK+ IM/HTML.
9033
5095532375ba [gaim-migrate @ 9809]
Kevin Stange <kstange@pidgin.im>
parents: 9029
diff changeset
693 * @param mark The GtkTextMark to insert the link at.
5095532375ba [gaim-migrate @ 9809]
Kevin Stange <kstange@pidgin.im>
parents: 9029
diff changeset
694 * @param url The URL for the link.
5095532375ba [gaim-migrate @ 9809]
Kevin Stange <kstange@pidgin.im>
parents: 9029
diff changeset
695 * @param text The string to use for the link description.
5095532375ba [gaim-migrate @ 9809]
Kevin Stange <kstange@pidgin.im>
parents: 9029
diff changeset
696 */
8677
18b494207322 [gaim-migrate @ 9430]
Tim Ringenbach <marv@pidgin.im>
parents: 8519
diff changeset
697 void gtk_imhtml_insert_link(GtkIMHtml *imhtml, GtkTextMark *mark, const char *url, const char *text);
9033
5095532375ba [gaim-migrate @ 9809]
Kevin Stange <kstange@pidgin.im>
parents: 9029
diff changeset
698
5095532375ba [gaim-migrate @ 9809]
Kevin Stange <kstange@pidgin.im>
parents: 9029
diff changeset
699 /**
10814
7e17cb56b019 [gaim-migrate @ 12468]
Luke Schierer <lschiere@pidgin.im>
parents: 10799
diff changeset
700 * Inserts a smiley at the current location or selection in a GTK+ IM/HTML.
9033
5095532375ba [gaim-migrate @ 9809]
Kevin Stange <kstange@pidgin.im>
parents: 9029
diff changeset
701 *
10814
7e17cb56b019 [gaim-migrate @ 12468]
Luke Schierer <lschiere@pidgin.im>
parents: 10799
diff changeset
702 * @param imhtml The GTK+ IM/HTML.
9033
5095532375ba [gaim-migrate @ 9809]
Kevin Stange <kstange@pidgin.im>
parents: 9029
diff changeset
703 * @param sml The category of the smiley.
5095532375ba [gaim-migrate @ 9809]
Kevin Stange <kstange@pidgin.im>
parents: 9029
diff changeset
704 * @param smiley The text of the smiley to insert.
5095532375ba [gaim-migrate @ 9809]
Kevin Stange <kstange@pidgin.im>
parents: 9029
diff changeset
705 */
8061
a765ea99b49f [gaim-migrate @ 8749]
Nathan Walp <nwalp@pidgin.im>
parents: 8046
diff changeset
706 void gtk_imhtml_insert_smiley(GtkIMHtml *imhtml, const char *sml, char *smiley);
9033
5095532375ba [gaim-migrate @ 9809]
Kevin Stange <kstange@pidgin.im>
parents: 9029
diff changeset
707 /**
10814
7e17cb56b019 [gaim-migrate @ 12468]
Luke Schierer <lschiere@pidgin.im>
parents: 10799
diff changeset
708 * Inserts a smiley at the given iter in a GTK+ IM/HTML.
9033
5095532375ba [gaim-migrate @ 9809]
Kevin Stange <kstange@pidgin.im>
parents: 9029
diff changeset
709 *
10814
7e17cb56b019 [gaim-migrate @ 12468]
Luke Schierer <lschiere@pidgin.im>
parents: 10799
diff changeset
710 * @param imhtml The GTK+ IM/HTML.
9033
5095532375ba [gaim-migrate @ 9809]
Kevin Stange <kstange@pidgin.im>
parents: 9029
diff changeset
711 * @param sml The category of the smiley.
5095532375ba [gaim-migrate @ 9809]
Kevin Stange <kstange@pidgin.im>
parents: 9029
diff changeset
712 * @param smiley The text of the smiley to insert.
5095532375ba [gaim-migrate @ 9809]
Kevin Stange <kstange@pidgin.im>
parents: 9029
diff changeset
713 * @param iter The GtkTextIter in the IM/HTML to insert the smiley at.
5095532375ba [gaim-migrate @ 9809]
Kevin Stange <kstange@pidgin.im>
parents: 9029
diff changeset
714 */
8677
18b494207322 [gaim-migrate @ 9430]
Tim Ringenbach <marv@pidgin.im>
parents: 8519
diff changeset
715 void gtk_imhtml_insert_smiley_at_iter(GtkIMHtml *imhtml, const char *sml, char *smiley, GtkTextIter *iter);
9033
5095532375ba [gaim-migrate @ 9809]
Kevin Stange <kstange@pidgin.im>
parents: 9029
diff changeset
716
5095532375ba [gaim-migrate @ 9809]
Kevin Stange <kstange@pidgin.im>
parents: 9029
diff changeset
717 /**
5095532375ba [gaim-migrate @ 9809]
Kevin Stange <kstange@pidgin.im>
parents: 9029
diff changeset
718 * Inserts the IM/HTML scalable image with the given id at the given iter in a
10814
7e17cb56b019 [gaim-migrate @ 12468]
Luke Schierer <lschiere@pidgin.im>
parents: 10799
diff changeset
719 * GTK+ IM/HTML.
9033
5095532375ba [gaim-migrate @ 9809]
Kevin Stange <kstange@pidgin.im>
parents: 9029
diff changeset
720 *
10814
7e17cb56b019 [gaim-migrate @ 12468]
Luke Schierer <lschiere@pidgin.im>
parents: 10799
diff changeset
721 * @param imhtml The GTK+ IM/HTML.
9033
5095532375ba [gaim-migrate @ 9809]
Kevin Stange <kstange@pidgin.im>
parents: 9029
diff changeset
722 * @param id The id of the IM/HTML scalable.
5095532375ba [gaim-migrate @ 9809]
Kevin Stange <kstange@pidgin.im>
parents: 9029
diff changeset
723 * @param iter The GtkTextIter in the IM/HTML to insert the image at.
5095532375ba [gaim-migrate @ 9809]
Kevin Stange <kstange@pidgin.im>
parents: 9029
diff changeset
724 */
8962
5cd12e525d95 [gaim-migrate @ 9736]
Tim Ringenbach <marv@pidgin.im>
parents: 8881
diff changeset
725 void gtk_imhtml_insert_image_at_iter(GtkIMHtml *imhtml, int id, GtkTextIter *iter);
9033
5095532375ba [gaim-migrate @ 9809]
Kevin Stange <kstange@pidgin.im>
parents: 9029
diff changeset
726
5095532375ba [gaim-migrate @ 9809]
Kevin Stange <kstange@pidgin.im>
parents: 9029
diff changeset
727 /**
10814
7e17cb56b019 [gaim-migrate @ 12468]
Luke Schierer <lschiere@pidgin.im>
parents: 10799
diff changeset
728 * Sets the font size at the current location or selection in a GTK+ IM/HTML.
9033
5095532375ba [gaim-migrate @ 9809]
Kevin Stange <kstange@pidgin.im>
parents: 9029
diff changeset
729 *
10814
7e17cb56b019 [gaim-migrate @ 12468]
Luke Schierer <lschiere@pidgin.im>
parents: 10799
diff changeset
730 * @param imhtml The GTK+ IM/HTML.
9033
5095532375ba [gaim-migrate @ 9809]
Kevin Stange <kstange@pidgin.im>
parents: 9029
diff changeset
731 * @param size The HTML font size to use.
5095532375ba [gaim-migrate @ 9809]
Kevin Stange <kstange@pidgin.im>
parents: 9029
diff changeset
732 */
8061
a765ea99b49f [gaim-migrate @ 8749]
Nathan Walp <nwalp@pidgin.im>
parents: 8046
diff changeset
733 void gtk_imhtml_font_set_size(GtkIMHtml *imhtml, gint size);
9033
5095532375ba [gaim-migrate @ 9809]
Kevin Stange <kstange@pidgin.im>
parents: 9029
diff changeset
734
5095532375ba [gaim-migrate @ 9809]
Kevin Stange <kstange@pidgin.im>
parents: 9029
diff changeset
735 /**
5095532375ba [gaim-migrate @ 9809]
Kevin Stange <kstange@pidgin.im>
parents: 9029
diff changeset
736 * Decreases the font size by 1 at the current location or selection in a GTK
5095532375ba [gaim-migrate @ 9809]
Kevin Stange <kstange@pidgin.im>
parents: 9029
diff changeset
737 * IM/HTML.
5095532375ba [gaim-migrate @ 9809]
Kevin Stange <kstange@pidgin.im>
parents: 9029
diff changeset
738 *
10814
7e17cb56b019 [gaim-migrate @ 12468]
Luke Schierer <lschiere@pidgin.im>
parents: 10799
diff changeset
739 * @param imhtml The GTK+ IM/HTML.
9033
5095532375ba [gaim-migrate @ 9809]
Kevin Stange <kstange@pidgin.im>
parents: 9029
diff changeset
740 */
8061
a765ea99b49f [gaim-migrate @ 8749]
Nathan Walp <nwalp@pidgin.im>
parents: 8046
diff changeset
741 void gtk_imhtml_font_shrink(GtkIMHtml *imhtml);
9033
5095532375ba [gaim-migrate @ 9809]
Kevin Stange <kstange@pidgin.im>
parents: 9029
diff changeset
742
5095532375ba [gaim-migrate @ 9809]
Kevin Stange <kstange@pidgin.im>
parents: 9029
diff changeset
743 /**
5095532375ba [gaim-migrate @ 9809]
Kevin Stange <kstange@pidgin.im>
parents: 9029
diff changeset
744 * Increases the font size by 1 at the current location or selection in a GTK
5095532375ba [gaim-migrate @ 9809]
Kevin Stange <kstange@pidgin.im>
parents: 9029
diff changeset
745 * IM/HTML.
5095532375ba [gaim-migrate @ 9809]
Kevin Stange <kstange@pidgin.im>
parents: 9029
diff changeset
746 *
10814
7e17cb56b019 [gaim-migrate @ 12468]
Luke Schierer <lschiere@pidgin.im>
parents: 10799
diff changeset
747 * @param imhtml The GTK+ IM/HTML.
9033
5095532375ba [gaim-migrate @ 9809]
Kevin Stange <kstange@pidgin.im>
parents: 9029
diff changeset
748 */
8061
a765ea99b49f [gaim-migrate @ 8749]
Nathan Walp <nwalp@pidgin.im>
parents: 8046
diff changeset
749 void gtk_imhtml_font_grow(GtkIMHtml *imhtml);
9033
5095532375ba [gaim-migrate @ 9809]
Kevin Stange <kstange@pidgin.im>
parents: 9029
diff changeset
750
5095532375ba [gaim-migrate @ 9809]
Kevin Stange <kstange@pidgin.im>
parents: 9029
diff changeset
751 /**
10814
7e17cb56b019 [gaim-migrate @ 12468]
Luke Schierer <lschiere@pidgin.im>
parents: 10799
diff changeset
752 * Returns the HTML formatted contents between two iters in a GTK+ IM/HTML.
9033
5095532375ba [gaim-migrate @ 9809]
Kevin Stange <kstange@pidgin.im>
parents: 9029
diff changeset
753 *
10814
7e17cb56b019 [gaim-migrate @ 12468]
Luke Schierer <lschiere@pidgin.im>
parents: 10799
diff changeset
754 * @param imhtml The GTK+ IM/HTML.
9033
5095532375ba [gaim-migrate @ 9809]
Kevin Stange <kstange@pidgin.im>
parents: 9029
diff changeset
755 * @param start The GtkTextIter indicating the start point in the IM/HTML.
5095532375ba [gaim-migrate @ 9809]
Kevin Stange <kstange@pidgin.im>
parents: 9029
diff changeset
756 * @param end The GtkTextIter indicating the end point in the IM/HTML.
5095532375ba [gaim-migrate @ 9809]
Kevin Stange <kstange@pidgin.im>
parents: 9029
diff changeset
757 *
5095532375ba [gaim-migrate @ 9809]
Kevin Stange <kstange@pidgin.im>
parents: 9029
diff changeset
758 * @return A string containing the HTML formatted text.
5095532375ba [gaim-migrate @ 9809]
Kevin Stange <kstange@pidgin.im>
parents: 9029
diff changeset
759 */
8061
a765ea99b49f [gaim-migrate @ 8749]
Nathan Walp <nwalp@pidgin.im>
parents: 8046
diff changeset
760 char *gtk_imhtml_get_markup_range(GtkIMHtml *imhtml, GtkTextIter *start, GtkTextIter *end);
9033
5095532375ba [gaim-migrate @ 9809]
Kevin Stange <kstange@pidgin.im>
parents: 9029
diff changeset
761
5095532375ba [gaim-migrate @ 9809]
Kevin Stange <kstange@pidgin.im>
parents: 9029
diff changeset
762 /**
10814
7e17cb56b019 [gaim-migrate @ 12468]
Luke Schierer <lschiere@pidgin.im>
parents: 10799
diff changeset
763 * Returns the entire HTML formatted contents of a GTK+ IM/HTML.
9033
5095532375ba [gaim-migrate @ 9809]
Kevin Stange <kstange@pidgin.im>
parents: 9029
diff changeset
764 *
10814
7e17cb56b019 [gaim-migrate @ 12468]
Luke Schierer <lschiere@pidgin.im>
parents: 10799
diff changeset
765 * @param imhtml The GTK+ IM/HTML.
9033
5095532375ba [gaim-migrate @ 9809]
Kevin Stange <kstange@pidgin.im>
parents: 9029
diff changeset
766 *
5095532375ba [gaim-migrate @ 9809]
Kevin Stange <kstange@pidgin.im>
parents: 9029
diff changeset
767 * @return A string containing the HTML formatted text.
5095532375ba [gaim-migrate @ 9809]
Kevin Stange <kstange@pidgin.im>
parents: 9029
diff changeset
768 */
8061
a765ea99b49f [gaim-migrate @ 8749]
Nathan Walp <nwalp@pidgin.im>
parents: 8046
diff changeset
769 char *gtk_imhtml_get_markup(GtkIMHtml *imhtml);
9033
5095532375ba [gaim-migrate @ 9809]
Kevin Stange <kstange@pidgin.im>
parents: 9029
diff changeset
770
5095532375ba [gaim-migrate @ 9809]
Kevin Stange <kstange@pidgin.im>
parents: 9029
diff changeset
771 /**
5095532375ba [gaim-migrate @ 9809]
Kevin Stange <kstange@pidgin.im>
parents: 9029
diff changeset
772 * Returns a null terminated array of pointers to null terminated strings, each
5095532375ba [gaim-migrate @ 9809]
Kevin Stange <kstange@pidgin.im>
parents: 9029
diff changeset
773 * string for each line. g_strfreev() should be called to free it when done.
5095532375ba [gaim-migrate @ 9809]
Kevin Stange <kstange@pidgin.im>
parents: 9029
diff changeset
774 *
10814
7e17cb56b019 [gaim-migrate @ 12468]
Luke Schierer <lschiere@pidgin.im>
parents: 10799
diff changeset
775 * @param imhtml The GTK+ IM/HTML.
9033
5095532375ba [gaim-migrate @ 9809]
Kevin Stange <kstange@pidgin.im>
parents: 9029
diff changeset
776 *
5095532375ba [gaim-migrate @ 9809]
Kevin Stange <kstange@pidgin.im>
parents: 9029
diff changeset
777 * @return A null terminated array of null terminated HTML formatted strings.
5095532375ba [gaim-migrate @ 9809]
Kevin Stange <kstange@pidgin.im>
parents: 9029
diff changeset
778 */
8677
18b494207322 [gaim-migrate @ 9430]
Tim Ringenbach <marv@pidgin.im>
parents: 8519
diff changeset
779 char **gtk_imhtml_get_markup_lines(GtkIMHtml *imhtml);
9033
5095532375ba [gaim-migrate @ 9809]
Kevin Stange <kstange@pidgin.im>
parents: 9029
diff changeset
780
5095532375ba [gaim-migrate @ 9809]
Kevin Stange <kstange@pidgin.im>
parents: 9029
diff changeset
781 /**
10814
7e17cb56b019 [gaim-migrate @ 12468]
Luke Schierer <lschiere@pidgin.im>
parents: 10799
diff changeset
782 * Returns the entire unformatted (plain text) contents of a GTK+ IM/HTML
7e17cb56b019 [gaim-migrate @ 12468]
Luke Schierer <lschiere@pidgin.im>
parents: 10799
diff changeset
783 * between two iters in a GTK+ IM/HTML.
9033
5095532375ba [gaim-migrate @ 9809]
Kevin Stange <kstange@pidgin.im>
parents: 9029
diff changeset
784 *
10814
7e17cb56b019 [gaim-migrate @ 12468]
Luke Schierer <lschiere@pidgin.im>
parents: 10799
diff changeset
785 * @param imhtml The GTK+ IM/HTML.
9033
5095532375ba [gaim-migrate @ 9809]
Kevin Stange <kstange@pidgin.im>
parents: 9029
diff changeset
786 * @param start The GtkTextIter indicating the start point in the IM/HTML.
9185
1f1bce2f56c3 [gaim-migrate @ 9980]
Kevin Stange <kstange@pidgin.im>
parents: 9041
diff changeset
787 * @param stop The GtkTextIter indicating the end point in the IM/HTML.
9033
5095532375ba [gaim-migrate @ 9809]
Kevin Stange <kstange@pidgin.im>
parents: 9029
diff changeset
788 *
5095532375ba [gaim-migrate @ 9809]
Kevin Stange <kstange@pidgin.im>
parents: 9029
diff changeset
789 * @return A string containing the unformatted text.
5095532375ba [gaim-migrate @ 9809]
Kevin Stange <kstange@pidgin.im>
parents: 9029
diff changeset
790 */
8677
18b494207322 [gaim-migrate @ 9430]
Tim Ringenbach <marv@pidgin.im>
parents: 8519
diff changeset
791 char *gtk_imhtml_get_text(GtkIMHtml *imhtml, GtkTextIter *start, GtkTextIter *stop);
8061
a765ea99b49f [gaim-migrate @ 8749]
Nathan Walp <nwalp@pidgin.im>
parents: 8046
diff changeset
792
9033
5095532375ba [gaim-migrate @ 9809]
Kevin Stange <kstange@pidgin.im>
parents: 9029
diff changeset
793 /*@}*/
5095532375ba [gaim-migrate @ 9809]
Kevin Stange <kstange@pidgin.im>
parents: 9029
diff changeset
794
1428
c14bab2b74bb [gaim-migrate @ 1438]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
diff changeset
795 #ifdef __cplusplus
c14bab2b74bb [gaim-migrate @ 1438]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
diff changeset
796 }
c14bab2b74bb [gaim-migrate @ 1438]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
diff changeset
797 #endif
c14bab2b74bb [gaim-migrate @ 1438]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
diff changeset
798
15562
8c8249fe5e3c gaim_gtk to pidgin. I hope
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
799 #endif /* _PIDGINIMHTML_H_ */

mercurial