pidgin/gtkutils.h

Wed, 21 Sep 2011 06:45:26 +0000

author
Elliott Sales de Andrade <qulogic@pidgin.im>
date
Wed, 21 Sep 2011 06:45:26 +0000
changeset 32575
eb4fc932fae9
parent 32554
0d844fac6679
child 32577
e32ba7559843
permissions
-rw-r--r--

Apply conversation theme when opening the GTK conversation. All the
parsing stuff was moved out of the theme code and into the conversation
code.

Someone (not me!) needs to check the code I commented out and see if
we really need that stuff (and then port it to WebKit/styling).

We also need to determine where to place Template.html and the rest
of our (not-yet-written) default theme.

4359
cf899ee07d1d [gaim-migrate @ 4625]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
1 /**
cf899ee07d1d [gaim-migrate @ 4625]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
2 * @file gtkutils.h GTK+ utility functions
16254
eeb2bba4dc94 Rename the Doxygen group from gtkui to pidgin.
Richard Laager <rlaager@pidgin.im>
parents: 16002
diff changeset
3 * @ingroup pidgin
20147
66f05a854eee applied changes from 8a731bbd0197fbcc91a705c2d8f528154216defa
Richard Laager <rlaager@pidgin.im>
parents: 20036
diff changeset
4 */
66f05a854eee applied changes from 8a731bbd0197fbcc91a705c2d8f528154216defa
Richard Laager <rlaager@pidgin.im>
parents: 20036
diff changeset
5
66f05a854eee applied changes from 8a731bbd0197fbcc91a705c2d8f528154216defa
Richard Laager <rlaager@pidgin.im>
parents: 20036
diff changeset
6 /* pidgin
4359
cf899ee07d1d [gaim-migrate @ 4625]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
7 *
15572
e069b22c1fc4 headers to pidgin
Sean Egan <seanegan@pidgin.im>
parents: 15568
diff changeset
8 * Pidgin is the legal property of its developers, whose names are too numerous
8046
c581b20a47d6 [gaim-migrate @ 8730]
Sean Egan <seanegan@pidgin.im>
parents: 7956
diff changeset
9 * to list here. Please refer to the COPYRIGHT file distributed with this
c581b20a47d6 [gaim-migrate @ 8730]
Sean Egan <seanegan@pidgin.im>
parents: 7956
diff changeset
10 * source distribution.
6646
b9a0b5eb74e6 [gaim-migrate @ 7171]
Christian Hammond <chipx86@chipx86.com>
parents: 6372
diff changeset
11 *
4359
cf899ee07d1d [gaim-migrate @ 4625]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
12 * This program is free software; you can redistribute it and/or modify
cf899ee07d1d [gaim-migrate @ 4625]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
13 * it under the terms of the GNU General Public License as published by
cf899ee07d1d [gaim-migrate @ 4625]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
14 * the Free Software Foundation; either version 2 of the License, or
cf899ee07d1d [gaim-migrate @ 4625]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
15 * (at your option) any later version.
cf899ee07d1d [gaim-migrate @ 4625]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
16 *
cf899ee07d1d [gaim-migrate @ 4625]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
17 * This program is distributed in the hope that it will be useful,
cf899ee07d1d [gaim-migrate @ 4625]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
18 * but WITHOUT ANY WARRANTY; without even the implied warranty of
cf899ee07d1d [gaim-migrate @ 4625]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
19 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
cf899ee07d1d [gaim-migrate @ 4625]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
20 * GNU General Public License for more details.
cf899ee07d1d [gaim-migrate @ 4625]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
21 *
cf899ee07d1d [gaim-migrate @ 4625]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
22 * You should have received a copy of the GNU General Public License
cf899ee07d1d [gaim-migrate @ 4625]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
23 * along with this program; if not, write to the Free Software
19859
71d37b57eff2 The FSF changed its address a while ago; our files were out of date.
John Bailey <rekkanoryo@rekkanoryo.org>
parents: 19547
diff changeset
24 * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02111-1301 USA
4359
cf899ee07d1d [gaim-migrate @ 4625]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
25 */
15562
8c8249fe5e3c gaim_gtk to pidgin. I hope
Sean Egan <seanegan@pidgin.im>
parents: 15496
diff changeset
26 #ifndef _PIDGINUTILS_H_
8c8249fe5e3c gaim_gtk to pidgin. I hope
Sean Egan <seanegan@pidgin.im>
parents: 15496
diff changeset
27 #define _PIDGINUTILS_H_
4359
cf899ee07d1d [gaim-migrate @ 4625]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
28
5872
754c63f29b77 [gaim-migrate @ 6304]
Christian Hammond <chipx86@chipx86.com>
parents: 5676
diff changeset
29 #include "gtkconv.h"
15577
b8129373f65e More pidgin changes
Sean Egan <seanegan@pidgin.im>
parents: 15572
diff changeset
30 #include "pidgin.h"
5644
bc4c2f9f2bf8 [gaim-migrate @ 6058]
Christian Hammond <chipx86@chipx86.com>
parents: 5530
diff changeset
31 #include "prpl.h"
12919
519199cca273 [gaim-migrate @ 15272]
Etan Reisner <deryni@pidgin.im>
parents: 12323
diff changeset
32 #include "util.h"
4359
cf899ee07d1d [gaim-migrate @ 4625]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
33
18966
6a0715b72b6b Screenname auto-completion filtering by Leonardo Fernandes, Fixes #519
Sean Egan <seanegan@pidgin.im>
parents: 18672
diff changeset
34
6a0715b72b6b Screenname auto-completion filtering by Leonardo Fernandes, Fixes #519
Sean Egan <seanegan@pidgin.im>
parents: 18672
diff changeset
35
6a0715b72b6b Screenname auto-completion filtering by Leonardo Fernandes, Fixes #519
Sean Egan <seanegan@pidgin.im>
parents: 18672
diff changeset
36
6a0715b72b6b Screenname auto-completion filtering by Leonardo Fernandes, Fixes #519
Sean Egan <seanegan@pidgin.im>
parents: 18672
diff changeset
37
6372
27c3152351ce [gaim-migrate @ 6877]
Christian Hammond <chipx86@chipx86.com>
parents: 5966
diff changeset
38 typedef enum
27c3152351ce [gaim-migrate @ 6877]
Christian Hammond <chipx86@chipx86.com>
parents: 5966
diff changeset
39 {
15568
cd19bb5a51b8 gtkutils changes
Sean Egan <seanegan@pidgin.im>
parents: 15562
diff changeset
40 PIDGIN_BUTTON_HORIZONTAL,
cd19bb5a51b8 gtkutils changes
Sean Egan <seanegan@pidgin.im>
parents: 15562
diff changeset
41 PIDGIN_BUTTON_VERTICAL
6372
27c3152351ce [gaim-migrate @ 6877]
Christian Hammond <chipx86@chipx86.com>
parents: 5966
diff changeset
42
15568
cd19bb5a51b8 gtkutils changes
Sean Egan <seanegan@pidgin.im>
parents: 15562
diff changeset
43 } PidginButtonOrientation;
6372
27c3152351ce [gaim-migrate @ 6877]
Christian Hammond <chipx86@chipx86.com>
parents: 5966
diff changeset
44
27c3152351ce [gaim-migrate @ 6877]
Christian Hammond <chipx86@chipx86.com>
parents: 5966
diff changeset
45 typedef enum
27c3152351ce [gaim-migrate @ 6877]
Christian Hammond <chipx86@chipx86.com>
parents: 5966
diff changeset
46 {
15568
cd19bb5a51b8 gtkutils changes
Sean Egan <seanegan@pidgin.im>
parents: 15562
diff changeset
47 PIDGIN_BUTTON_NONE = 0,
cd19bb5a51b8 gtkutils changes
Sean Egan <seanegan@pidgin.im>
parents: 15562
diff changeset
48 PIDGIN_BUTTON_TEXT,
cd19bb5a51b8 gtkutils changes
Sean Egan <seanegan@pidgin.im>
parents: 15562
diff changeset
49 PIDGIN_BUTTON_IMAGE,
cd19bb5a51b8 gtkutils changes
Sean Egan <seanegan@pidgin.im>
parents: 15562
diff changeset
50 PIDGIN_BUTTON_TEXT_IMAGE
6372
27c3152351ce [gaim-migrate @ 6877]
Christian Hammond <chipx86@chipx86.com>
parents: 5966
diff changeset
51
15568
cd19bb5a51b8 gtkutils changes
Sean Egan <seanegan@pidgin.im>
parents: 15562
diff changeset
52 } PidginButtonStyle;
6372
27c3152351ce [gaim-migrate @ 6877]
Christian Hammond <chipx86@chipx86.com>
parents: 5966
diff changeset
53
15496
76b5ca00a36c I think this takes care of protocol icons. Note there are still places
Sean Egan <seanegan@pidgin.im>
parents: 15474
diff changeset
54 typedef enum
76b5ca00a36c I think this takes care of protocol icons. Note there are still places
Sean Egan <seanegan@pidgin.im>
parents: 15474
diff changeset
55 {
76b5ca00a36c I think this takes care of protocol icons. Note there are still places
Sean Egan <seanegan@pidgin.im>
parents: 15474
diff changeset
56 PIDGIN_PRPL_ICON_SMALL,
76b5ca00a36c I think this takes care of protocol icons. Note there are still places
Sean Egan <seanegan@pidgin.im>
parents: 15474
diff changeset
57 PIDGIN_PRPL_ICON_MEDIUM,
76b5ca00a36c I think this takes care of protocol icons. Note there are still places
Sean Egan <seanegan@pidgin.im>
parents: 15474
diff changeset
58 PIDGIN_PRPL_ICON_LARGE
76b5ca00a36c I think this takes care of protocol icons. Note there are still places
Sean Egan <seanegan@pidgin.im>
parents: 15474
diff changeset
59 } PidginPrplIconSize;
76b5ca00a36c I think this takes care of protocol icons. Note there are still places
Sean Egan <seanegan@pidgin.im>
parents: 15474
diff changeset
60
8272
c1e38e0ec1d5 [gaim-migrate @ 8996]
Nathan Fredrickson <nathan@silverorange.com>
parents: 8143
diff changeset
61 #ifndef _WIN32
c1e38e0ec1d5 [gaim-migrate @ 8996]
Nathan Fredrickson <nathan@silverorange.com>
parents: 8143
diff changeset
62 typedef enum
c1e38e0ec1d5 [gaim-migrate @ 8996]
Nathan Fredrickson <nathan@silverorange.com>
parents: 8143
diff changeset
63 {
15568
cd19bb5a51b8 gtkutils changes
Sean Egan <seanegan@pidgin.im>
parents: 15562
diff changeset
64 PIDGIN_BROWSER_DEFAULT = 0,
cd19bb5a51b8 gtkutils changes
Sean Egan <seanegan@pidgin.im>
parents: 15562
diff changeset
65 PIDGIN_BROWSER_CURRENT,
cd19bb5a51b8 gtkutils changes
Sean Egan <seanegan@pidgin.im>
parents: 15562
diff changeset
66 PIDGIN_BROWSER_NEW_WINDOW,
cd19bb5a51b8 gtkutils changes
Sean Egan <seanegan@pidgin.im>
parents: 15562
diff changeset
67 PIDGIN_BROWSER_NEW_TAB
8741
61c5482e0948 [gaim-migrate @ 9496]
Christian Hammond <chipx86@chipx86.com>
parents: 8735
diff changeset
68
15568
cd19bb5a51b8 gtkutils changes
Sean Egan <seanegan@pidgin.im>
parents: 15562
diff changeset
69 } PidginBrowserPlace;
8272
c1e38e0ec1d5 [gaim-migrate @ 8996]
Nathan Fredrickson <nathan@silverorange.com>
parents: 8143
diff changeset
70 #endif /* _WIN32 */
c1e38e0ec1d5 [gaim-migrate @ 8996]
Nathan Fredrickson <nathan@silverorange.com>
parents: 8143
diff changeset
71
18966
6a0715b72b6b Screenname auto-completion filtering by Leonardo Fernandes, Fixes #519
Sean Egan <seanegan@pidgin.im>
parents: 18672
diff changeset
72 typedef struct {
6a0715b72b6b Screenname auto-completion filtering by Leonardo Fernandes, Fixes #519
Sean Egan <seanegan@pidgin.im>
parents: 18672
diff changeset
73 gboolean is_buddy;
6a0715b72b6b Screenname auto-completion filtering by Leonardo Fernandes, Fixes #519
Sean Egan <seanegan@pidgin.im>
parents: 18672
diff changeset
74 union {
6a0715b72b6b Screenname auto-completion filtering by Leonardo Fernandes, Fixes #519
Sean Egan <seanegan@pidgin.im>
parents: 18672
diff changeset
75 PurpleBuddy *buddy;
6a0715b72b6b Screenname auto-completion filtering by Leonardo Fernandes, Fixes #519
Sean Egan <seanegan@pidgin.im>
parents: 18672
diff changeset
76 PurpleLogSet *logged_buddy;
6a0715b72b6b Screenname auto-completion filtering by Leonardo Fernandes, Fixes #519
Sean Egan <seanegan@pidgin.im>
parents: 18672
diff changeset
77 } entry;
6a0715b72b6b Screenname auto-completion filtering by Leonardo Fernandes, Fixes #519
Sean Egan <seanegan@pidgin.im>
parents: 18672
diff changeset
78 } PidginBuddyCompletionEntry;
6a0715b72b6b Screenname auto-completion filtering by Leonardo Fernandes, Fixes #519
Sean Egan <seanegan@pidgin.im>
parents: 18672
diff changeset
79
6a0715b72b6b Screenname auto-completion filtering by Leonardo Fernandes, Fixes #519
Sean Egan <seanegan@pidgin.im>
parents: 18672
diff changeset
80 typedef gboolean (*PidginFilterBuddyCompletionEntryFunc) (const PidginBuddyCompletionEntry *completion_entry, gpointer user_data);
6a0715b72b6b Screenname auto-completion filtering by Leonardo Fernandes, Fixes #519
Sean Egan <seanegan@pidgin.im>
parents: 18672
diff changeset
81
6a0715b72b6b Screenname auto-completion filtering by Leonardo Fernandes, Fixes #519
Sean Egan <seanegan@pidgin.im>
parents: 18672
diff changeset
82
4359
cf899ee07d1d [gaim-migrate @ 4625]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
83 /**
cf899ee07d1d [gaim-migrate @ 4625]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
84 * Sets up a gtkimhtml widget, loads it with smileys, and sets the
cf899ee07d1d [gaim-migrate @ 4625]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
85 * default signal handlers.
cf899ee07d1d [gaim-migrate @ 4625]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
86 *
cf899ee07d1d [gaim-migrate @ 4625]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
87 * @param imhtml The gtkimhtml widget to setup.
cf899ee07d1d [gaim-migrate @ 4625]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
88 */
15568
cd19bb5a51b8 gtkutils changes
Sean Egan <seanegan@pidgin.im>
parents: 15562
diff changeset
89 void pidgin_setup_imhtml(GtkWidget *imhtml);
4359
cf899ee07d1d [gaim-migrate @ 4625]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
90
cf899ee07d1d [gaim-migrate @ 4625]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
91 /**
10175
2bf5ed145e8a [gaim-migrate @ 11290]
Mark Doliner <markdoliner@pidgin.im>
parents: 10061
diff changeset
92 * Create an GtkIMHtml widget and associated GtkIMHtmlToolbar widget. This
2bf5ed145e8a [gaim-migrate @ 11290]
Mark Doliner <markdoliner@pidgin.im>
parents: 10061
diff changeset
93 * functions puts both widgets in a nice GtkFrame. They're separate by an
2bf5ed145e8a [gaim-migrate @ 11290]
Mark Doliner <markdoliner@pidgin.im>
parents: 10061
diff changeset
94 * attractive GtkSeparator.
2bf5ed145e8a [gaim-migrate @ 11290]
Mark Doliner <markdoliner@pidgin.im>
parents: 10061
diff changeset
95 *
13281
3558cb15ebb9 [gaim-migrate @ 15646]
Richard Laager <rlaager@pidgin.im>
parents: 13110
diff changeset
96 * @param editable @c TRUE if this imhtml should be editable. If this is @c FALSE,
10175
2bf5ed145e8a [gaim-migrate @ 11290]
Mark Doliner <markdoliner@pidgin.im>
parents: 10061
diff changeset
97 * then the toolbar will NOT be created. If this imthml should be
2bf5ed145e8a [gaim-migrate @ 11290]
Mark Doliner <markdoliner@pidgin.im>
parents: 10061
diff changeset
98 * read-only at first, but may become editable later, then pass in
13281
3558cb15ebb9 [gaim-migrate @ 15646]
Richard Laager <rlaager@pidgin.im>
parents: 13110
diff changeset
99 * @c TRUE here and then manually call gtk_imhtml_set_editable() later.
10175
2bf5ed145e8a [gaim-migrate @ 11290]
Mark Doliner <markdoliner@pidgin.im>
parents: 10061
diff changeset
100 * @param imhtml_ret A pointer to a pointer to a GtkWidget. This pointer
2bf5ed145e8a [gaim-migrate @ 11290]
Mark Doliner <markdoliner@pidgin.im>
parents: 10061
diff changeset
101 * will be set to the imhtml when this function exits.
2bf5ed145e8a [gaim-migrate @ 11290]
Mark Doliner <markdoliner@pidgin.im>
parents: 10061
diff changeset
102 * @param toolbar_ret A pointer to a pointer to a GtkWidget. If editable is
2bf5ed145e8a [gaim-migrate @ 11290]
Mark Doliner <markdoliner@pidgin.im>
parents: 10061
diff changeset
103 * TRUE then this will be set to the toolbar when this function exits.
13281
3558cb15ebb9 [gaim-migrate @ 15646]
Richard Laager <rlaager@pidgin.im>
parents: 13110
diff changeset
104 * Otherwise this will be set to @c NULL.
3558cb15ebb9 [gaim-migrate @ 15646]
Richard Laager <rlaager@pidgin.im>
parents: 13110
diff changeset
105 * @param sw_ret This will be filled with a pointer to the scrolled window
3558cb15ebb9 [gaim-migrate @ 15646]
Richard Laager <rlaager@pidgin.im>
parents: 13110
diff changeset
106 * widget which contains the imhtml.
10175
2bf5ed145e8a [gaim-migrate @ 11290]
Mark Doliner <markdoliner@pidgin.im>
parents: 10061
diff changeset
107 * @return The GtkFrame containing the toolbar and imhtml.
2bf5ed145e8a [gaim-migrate @ 11290]
Mark Doliner <markdoliner@pidgin.im>
parents: 10061
diff changeset
108 */
15562
8c8249fe5e3c gaim_gtk to pidgin. I hope
Sean Egan <seanegan@pidgin.im>
parents: 15496
diff changeset
109 GtkWidget *pidgin_create_imhtml(gboolean editable, GtkWidget **imhtml_ret, GtkWidget **toolbar_ret, GtkWidget **sw_ret);
10175
2bf5ed145e8a [gaim-migrate @ 11290]
Mark Doliner <markdoliner@pidgin.im>
parents: 10061
diff changeset
110
2bf5ed145e8a [gaim-migrate @ 11290]
Mark Doliner <markdoliner@pidgin.im>
parents: 10061
diff changeset
111 /**
32518
f3ed9129c573 Add a pidgin_create_webview utility function, which acts similarly to
Elliott Sales de Andrade <qulogic@pidgin.im>
parents: 32149
diff changeset
112 * Create an GtkWebView widget and associated GtkIMHtmlToolbar widget. This
f3ed9129c573 Add a pidgin_create_webview utility function, which acts similarly to
Elliott Sales de Andrade <qulogic@pidgin.im>
parents: 32149
diff changeset
113 * function puts both widgets in a nice GtkFrame. They're separated by an
f3ed9129c573 Add a pidgin_create_webview utility function, which acts similarly to
Elliott Sales de Andrade <qulogic@pidgin.im>
parents: 32149
diff changeset
114 * attractive GtkSeparator.
f3ed9129c573 Add a pidgin_create_webview utility function, which acts similarly to
Elliott Sales de Andrade <qulogic@pidgin.im>
parents: 32149
diff changeset
115 * FIXME: There is no editable GtkWebView yet.
f3ed9129c573 Add a pidgin_create_webview utility function, which acts similarly to
Elliott Sales de Andrade <qulogic@pidgin.im>
parents: 32149
diff changeset
116 *
f3ed9129c573 Add a pidgin_create_webview utility function, which acts similarly to
Elliott Sales de Andrade <qulogic@pidgin.im>
parents: 32149
diff changeset
117 * @param editable @c TRUE if this webview should be editable. If this is
f3ed9129c573 Add a pidgin_create_webview utility function, which acts similarly to
Elliott Sales de Andrade <qulogic@pidgin.im>
parents: 32149
diff changeset
118 * @c FALSE, then the toolbar will NOT be created. If this webview
f3ed9129c573 Add a pidgin_create_webview utility function, which acts similarly to
Elliott Sales de Andrade <qulogic@pidgin.im>
parents: 32149
diff changeset
119 * should be read-only at first, but may become editable later, then
f3ed9129c573 Add a pidgin_create_webview utility function, which acts similarly to
Elliott Sales de Andrade <qulogic@pidgin.im>
parents: 32149
diff changeset
120 * pass in @c TRUE here and then manually call gtk_webview_set_editable()
f3ed9129c573 Add a pidgin_create_webview utility function, which acts similarly to
Elliott Sales de Andrade <qulogic@pidgin.im>
parents: 32149
diff changeset
121 * later.
f3ed9129c573 Add a pidgin_create_webview utility function, which acts similarly to
Elliott Sales de Andrade <qulogic@pidgin.im>
parents: 32149
diff changeset
122 * @param webview_ret A pointer to a pointer to a GtkWidget. This pointer
f3ed9129c573 Add a pidgin_create_webview utility function, which acts similarly to
Elliott Sales de Andrade <qulogic@pidgin.im>
parents: 32149
diff changeset
123 * will be set to the webview when this function exits.
f3ed9129c573 Add a pidgin_create_webview utility function, which acts similarly to
Elliott Sales de Andrade <qulogic@pidgin.im>
parents: 32149
diff changeset
124 * @param toolbar_ret A pointer to a pointer to a GtkWidget. If editable is
f3ed9129c573 Add a pidgin_create_webview utility function, which acts similarly to
Elliott Sales de Andrade <qulogic@pidgin.im>
parents: 32149
diff changeset
125 * TRUE then this will be set to the toolbar when this function exits.
f3ed9129c573 Add a pidgin_create_webview utility function, which acts similarly to
Elliott Sales de Andrade <qulogic@pidgin.im>
parents: 32149
diff changeset
126 * Otherwise this will be set to @c NULL.
f3ed9129c573 Add a pidgin_create_webview utility function, which acts similarly to
Elliott Sales de Andrade <qulogic@pidgin.im>
parents: 32149
diff changeset
127 * @param sw_ret This will be filled with a pointer to the scrolled window
f3ed9129c573 Add a pidgin_create_webview utility function, which acts similarly to
Elliott Sales de Andrade <qulogic@pidgin.im>
parents: 32149
diff changeset
128 * widget which contains the webview.
f3ed9129c573 Add a pidgin_create_webview utility function, which acts similarly to
Elliott Sales de Andrade <qulogic@pidgin.im>
parents: 32149
diff changeset
129 * @return The GtkFrame containing the toolbar and webview.
f3ed9129c573 Add a pidgin_create_webview utility function, which acts similarly to
Elliott Sales de Andrade <qulogic@pidgin.im>
parents: 32149
diff changeset
130 */
f3ed9129c573 Add a pidgin_create_webview utility function, which acts similarly to
Elliott Sales de Andrade <qulogic@pidgin.im>
parents: 32149
diff changeset
131 GtkWidget *pidgin_create_webview(gboolean editable, GtkWidget **webview_ret, GtkWidget **toolbar_ret, GtkWidget **sw_ret);
f3ed9129c573 Add a pidgin_create_webview utility function, which acts similarly to
Elliott Sales de Andrade <qulogic@pidgin.im>
parents: 32149
diff changeset
132
f3ed9129c573 Add a pidgin_create_webview utility function, which acts similarly to
Elliott Sales de Andrade <qulogic@pidgin.im>
parents: 32149
diff changeset
133 /**
29896
fd9614c33141 Use a small GtkButton instead of the custom "X" for close in various
Kosta Arvanitis <karvanitis@hotmail.com>
parents: 29496
diff changeset
134 * Creates a small button
fd9614c33141 Use a small GtkButton instead of the custom "X" for close in various
Kosta Arvanitis <karvanitis@hotmail.com>
parents: 29496
diff changeset
135 *
fd9614c33141 Use a small GtkButton instead of the custom "X" for close in various
Kosta Arvanitis <karvanitis@hotmail.com>
parents: 29496
diff changeset
136 * @param image A button image.
fd9614c33141 Use a small GtkButton instead of the custom "X" for close in various
Kosta Arvanitis <karvanitis@hotmail.com>
parents: 29496
diff changeset
137 *
fd9614c33141 Use a small GtkButton instead of the custom "X" for close in various
Kosta Arvanitis <karvanitis@hotmail.com>
parents: 29496
diff changeset
138 * @return A GtkButton created from the image.
fd9614c33141 Use a small GtkButton instead of the custom "X" for close in various
Kosta Arvanitis <karvanitis@hotmail.com>
parents: 29496
diff changeset
139 * @since 2.7.0
fd9614c33141 Use a small GtkButton instead of the custom "X" for close in various
Kosta Arvanitis <karvanitis@hotmail.com>
parents: 29496
diff changeset
140 */
fd9614c33141 Use a small GtkButton instead of the custom "X" for close in various
Kosta Arvanitis <karvanitis@hotmail.com>
parents: 29496
diff changeset
141 GtkWidget *pidgin_create_small_button(GtkWidget *image);
fd9614c33141 Use a small GtkButton instead of the custom "X" for close in various
Kosta Arvanitis <karvanitis@hotmail.com>
parents: 29496
diff changeset
142
fd9614c33141 Use a small GtkButton instead of the custom "X" for close in various
Kosta Arvanitis <karvanitis@hotmail.com>
parents: 29496
diff changeset
143 /**
17213
25a0ae0d0ff7 Added to gtkutils.c:
Gabriel Schulhof <nix@go-nix.ca>
parents: 16446
diff changeset
144 * Creates a new window
25a0ae0d0ff7 Added to gtkutils.c:
Gabriel Schulhof <nix@go-nix.ca>
parents: 16446
diff changeset
145 *
25a0ae0d0ff7 Added to gtkutils.c:
Gabriel Schulhof <nix@go-nix.ca>
parents: 16446
diff changeset
146 * @param title The window title, or @c NULL
25a0ae0d0ff7 Added to gtkutils.c:
Gabriel Schulhof <nix@go-nix.ca>
parents: 16446
diff changeset
147 * @param border_width The window's desired border width
25a0ae0d0ff7 Added to gtkutils.c:
Gabriel Schulhof <nix@go-nix.ca>
parents: 16446
diff changeset
148 * @param role A string indicating what the window is responsible for doing, or @c NULL
25a0ae0d0ff7 Added to gtkutils.c:
Gabriel Schulhof <nix@go-nix.ca>
parents: 16446
diff changeset
149 * @param resizable Whether the window should be resizable (@c TRUE) or not (@c FALSE)
17240
6f3eac605684 Add a @since marker to pidgin_create_window()'s documentation.
Richard Laager <rlaager@pidgin.im>
parents: 17213
diff changeset
150 *
6f3eac605684 Add a @since marker to pidgin_create_window()'s documentation.
Richard Laager <rlaager@pidgin.im>
parents: 17213
diff changeset
151 * @since 2.1.0
17213
25a0ae0d0ff7 Added to gtkutils.c:
Gabriel Schulhof <nix@go-nix.ca>
parents: 16446
diff changeset
152 */
25a0ae0d0ff7 Added to gtkutils.c:
Gabriel Schulhof <nix@go-nix.ca>
parents: 16446
diff changeset
153 GtkWidget *pidgin_create_window(const char *title, guint border_width, const char *role, gboolean resizable);
25a0ae0d0ff7 Added to gtkutils.c:
Gabriel Schulhof <nix@go-nix.ca>
parents: 16446
diff changeset
154
25a0ae0d0ff7 Added to gtkutils.c:
Gabriel Schulhof <nix@go-nix.ca>
parents: 16446
diff changeset
155 /**
22000
5e7708f58d3d Patch from fmoo. This makes a lot of the windows closeable with Escape. There
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 21323
diff changeset
156 * Creates a new dialog window
5e7708f58d3d Patch from fmoo. This makes a lot of the windows closeable with Escape. There
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 21323
diff changeset
157 *
5e7708f58d3d Patch from fmoo. This makes a lot of the windows closeable with Escape. There
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 21323
diff changeset
158 * @param title The window title, or @c NULL
5e7708f58d3d Patch from fmoo. This makes a lot of the windows closeable with Escape. There
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 21323
diff changeset
159 * @param border_width The window's desired border width
5e7708f58d3d Patch from fmoo. This makes a lot of the windows closeable with Escape. There
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 21323
diff changeset
160 * @param role A string indicating what the window is responsible for doing, or @c NULL
5e7708f58d3d Patch from fmoo. This makes a lot of the windows closeable with Escape. There
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 21323
diff changeset
161 * @param resizable Whether the window should be resizable (@c TRUE) or not (@c FALSE)
5e7708f58d3d Patch from fmoo. This makes a lot of the windows closeable with Escape. There
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 21323
diff changeset
162 *
5e7708f58d3d Patch from fmoo. This makes a lot of the windows closeable with Escape. There
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 21323
diff changeset
163 * @since 2.4.0
5e7708f58d3d Patch from fmoo. This makes a lot of the windows closeable with Escape. There
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 21323
diff changeset
164 */
5e7708f58d3d Patch from fmoo. This makes a lot of the windows closeable with Escape. There
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 21323
diff changeset
165 GtkWidget *pidgin_create_dialog(const char *title, guint border_width, const char *role, gboolean resizable);
5e7708f58d3d Patch from fmoo. This makes a lot of the windows closeable with Escape. There
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 21323
diff changeset
166
5e7708f58d3d Patch from fmoo. This makes a lot of the windows closeable with Escape. There
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 21323
diff changeset
167 /**
5e7708f58d3d Patch from fmoo. This makes a lot of the windows closeable with Escape. There
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 21323
diff changeset
168 * Retrieves the main content box (vbox) from a pidgin dialog window
5e7708f58d3d Patch from fmoo. This makes a lot of the windows closeable with Escape. There
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 21323
diff changeset
169 *
5e7708f58d3d Patch from fmoo. This makes a lot of the windows closeable with Escape. There
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 21323
diff changeset
170 * @param dialog The dialog window
25888
d0fdd378a635 Remove trailing whitespace
Mark Doliner <markdoliner@pidgin.im>
parents: 25885
diff changeset
171 * @param homogeneous TRUE if all children are to be given equal space allotments.
22000
5e7708f58d3d Patch from fmoo. This makes a lot of the windows closeable with Escape. There
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 21323
diff changeset
172 * @param spacing the number of pixels to place by default between children
5e7708f58d3d Patch from fmoo. This makes a lot of the windows closeable with Escape. There
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 21323
diff changeset
173 *
5e7708f58d3d Patch from fmoo. This makes a lot of the windows closeable with Escape. There
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 21323
diff changeset
174 * @since 2.4.0
5e7708f58d3d Patch from fmoo. This makes a lot of the windows closeable with Escape. There
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 21323
diff changeset
175 */
5e7708f58d3d Patch from fmoo. This makes a lot of the windows closeable with Escape. There
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 21323
diff changeset
176 GtkWidget *pidgin_dialog_get_vbox_with_properties(GtkDialog *dialog, gboolean homogeneous, gint spacing);
5e7708f58d3d Patch from fmoo. This makes a lot of the windows closeable with Escape. There
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 21323
diff changeset
177
5e7708f58d3d Patch from fmoo. This makes a lot of the windows closeable with Escape. There
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 21323
diff changeset
178 /**
5e7708f58d3d Patch from fmoo. This makes a lot of the windows closeable with Escape. There
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 21323
diff changeset
179 * Retrieves the main content box (vbox) from a pidgin dialog window
5e7708f58d3d Patch from fmoo. This makes a lot of the windows closeable with Escape. There
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 21323
diff changeset
180 *
5e7708f58d3d Patch from fmoo. This makes a lot of the windows closeable with Escape. There
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 21323
diff changeset
181 * @param dialog The dialog window
5e7708f58d3d Patch from fmoo. This makes a lot of the windows closeable with Escape. There
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 21323
diff changeset
182 *
5e7708f58d3d Patch from fmoo. This makes a lot of the windows closeable with Escape. There
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 21323
diff changeset
183 * @since 2.4.0
5e7708f58d3d Patch from fmoo. This makes a lot of the windows closeable with Escape. There
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 21323
diff changeset
184 */
5e7708f58d3d Patch from fmoo. This makes a lot of the windows closeable with Escape. There
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 21323
diff changeset
185 GtkWidget *pidgin_dialog_get_vbox(GtkDialog *dialog);
5e7708f58d3d Patch from fmoo. This makes a lot of the windows closeable with Escape. There
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 21323
diff changeset
186
5e7708f58d3d Patch from fmoo. This makes a lot of the windows closeable with Escape. There
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 21323
diff changeset
187 /**
22005
0183020ba2cc Add a utility function pidgin_dialog_add_button to add buttons to a dialog
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 22000
diff changeset
188 * Add a button to a dialog created by #pidgin_create_dialog.
0183020ba2cc Add a utility function pidgin_dialog_add_button to add buttons to a dialog
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 22000
diff changeset
189 *
0183020ba2cc Add a utility function pidgin_dialog_add_button to add buttons to a dialog
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 22000
diff changeset
190 * @param dialog The dialog window
0183020ba2cc Add a utility function pidgin_dialog_add_button to add buttons to a dialog
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 22000
diff changeset
191 * @param label The stock-id or the label for the button
0183020ba2cc Add a utility function pidgin_dialog_add_button to add buttons to a dialog
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 22000
diff changeset
192 * @param callback The callback function for the button
0183020ba2cc Add a utility function pidgin_dialog_add_button to add buttons to a dialog
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 22000
diff changeset
193 * @param callbackdata The user data for the callback function
0183020ba2cc Add a utility function pidgin_dialog_add_button to add buttons to a dialog
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 22000
diff changeset
194 *
0183020ba2cc Add a utility function pidgin_dialog_add_button to add buttons to a dialog
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 22000
diff changeset
195 * @return The created button.
0183020ba2cc Add a utility function pidgin_dialog_add_button to add buttons to a dialog
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 22000
diff changeset
196 * @since 2.4.0
0183020ba2cc Add a utility function pidgin_dialog_add_button to add buttons to a dialog
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 22000
diff changeset
197 */
0183020ba2cc Add a utility function pidgin_dialog_add_button to add buttons to a dialog
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 22000
diff changeset
198 GtkWidget *pidgin_dialog_add_button(GtkDialog *dialog, const char *label,
0183020ba2cc Add a utility function pidgin_dialog_add_button to add buttons to a dialog
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 22000
diff changeset
199 GCallback callback, gpointer callbackdata);
0183020ba2cc Add a utility function pidgin_dialog_add_button to add buttons to a dialog
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 22000
diff changeset
200
0183020ba2cc Add a utility function pidgin_dialog_add_button to add buttons to a dialog
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 22000
diff changeset
201 /**
22000
5e7708f58d3d Patch from fmoo. This makes a lot of the windows closeable with Escape. There
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 21323
diff changeset
202 * Retrieves the action area (button box) from a pidgin dialog window
5e7708f58d3d Patch from fmoo. This makes a lot of the windows closeable with Escape. There
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 21323
diff changeset
203 *
5e7708f58d3d Patch from fmoo. This makes a lot of the windows closeable with Escape. There
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 21323
diff changeset
204 * @param dialog The dialog window
5e7708f58d3d Patch from fmoo. This makes a lot of the windows closeable with Escape. There
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 21323
diff changeset
205 *
5e7708f58d3d Patch from fmoo. This makes a lot of the windows closeable with Escape. There
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 21323
diff changeset
206 * @since 2.4.0
5e7708f58d3d Patch from fmoo. This makes a lot of the windows closeable with Escape. There
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 21323
diff changeset
207 */
5e7708f58d3d Patch from fmoo. This makes a lot of the windows closeable with Escape. There
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 21323
diff changeset
208 GtkWidget *pidgin_dialog_get_action_area(GtkDialog *dialog);
5e7708f58d3d Patch from fmoo. This makes a lot of the windows closeable with Escape. There
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 21323
diff changeset
209
5e7708f58d3d Patch from fmoo. This makes a lot of the windows closeable with Escape. There
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 21323
diff changeset
210 /**
4359
cf899ee07d1d [gaim-migrate @ 4625]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
211 * Toggles the sensitivity of a widget.
cf899ee07d1d [gaim-migrate @ 4625]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
212 *
cf899ee07d1d [gaim-migrate @ 4625]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
213 * @param widget @c NULL. Used for signal handlers.
cf899ee07d1d [gaim-migrate @ 4625]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
214 * @param to_toggle The widget to toggle.
cf899ee07d1d [gaim-migrate @ 4625]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
215 */
15562
8c8249fe5e3c gaim_gtk to pidgin. I hope
Sean Egan <seanegan@pidgin.im>
parents: 15496
diff changeset
216 void pidgin_toggle_sensitive(GtkWidget *widget, GtkWidget *to_toggle);
4359
cf899ee07d1d [gaim-migrate @ 4625]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
217
4687
91ad36873636 [gaim-migrate @ 4998]
Sean Egan <seanegan@pidgin.im>
parents: 4359
diff changeset
218 /**
25888
d0fdd378a635 Remove trailing whitespace
Mark Doliner <markdoliner@pidgin.im>
parents: 25885
diff changeset
219 * Checks if text has been entered into a GtkTextEntry widget. If
d0fdd378a635 Remove trailing whitespace
Mark Doliner <markdoliner@pidgin.im>
parents: 25885
diff changeset
220 * so, the GTK_RESPONSE_OK on the given dialog is set to TRUE.
7751
e0dc18b50181 [gaim-migrate @ 8396]
Mark Doliner <markdoliner@pidgin.im>
parents: 7712
diff changeset
221 * Otherwise GTK_RESPONSE_OK is set to FALSE.
e0dc18b50181 [gaim-migrate @ 8396]
Mark Doliner <markdoliner@pidgin.im>
parents: 7712
diff changeset
222 *
e0dc18b50181 [gaim-migrate @ 8396]
Mark Doliner <markdoliner@pidgin.im>
parents: 7712
diff changeset
223 * @param entry The text entry widget.
e0dc18b50181 [gaim-migrate @ 8396]
Mark Doliner <markdoliner@pidgin.im>
parents: 7712
diff changeset
224 * @param dialog The dialog containing the text entry widget.
e0dc18b50181 [gaim-migrate @ 8396]
Mark Doliner <markdoliner@pidgin.im>
parents: 7712
diff changeset
225 */
15562
8c8249fe5e3c gaim_gtk to pidgin. I hope
Sean Egan <seanegan@pidgin.im>
parents: 15496
diff changeset
226 void pidgin_set_sensitive_if_input(GtkWidget *entry, GtkWidget *dialog);
7751
e0dc18b50181 [gaim-migrate @ 8396]
Mark Doliner <markdoliner@pidgin.im>
parents: 7712
diff changeset
227
e0dc18b50181 [gaim-migrate @ 8396]
Mark Doliner <markdoliner@pidgin.im>
parents: 7712
diff changeset
228 /**
5319
d3832c88d562 [gaim-migrate @ 5691]
Benjamin Zeiss
parents: 5162
diff changeset
229 * Toggles the sensitivity of all widgets in a pointer array.
d3832c88d562 [gaim-migrate @ 5691]
Benjamin Zeiss
parents: 5162
diff changeset
230 *
6720
cdc5348dd848 [gaim-migrate @ 7247]
Christian Hammond <chipx86@chipx86.com>
parents: 6646
diff changeset
231 * @param w @c NULL. Used for signal handlers.
cdc5348dd848 [gaim-migrate @ 7247]
Christian Hammond <chipx86@chipx86.com>
parents: 6646
diff changeset
232 * @param data The array containing the widgets to toggle.
5319
d3832c88d562 [gaim-migrate @ 5691]
Benjamin Zeiss
parents: 5162
diff changeset
233 */
15562
8c8249fe5e3c gaim_gtk to pidgin. I hope
Sean Egan <seanegan@pidgin.im>
parents: 15496
diff changeset
234 void pidgin_toggle_sensitive_array(GtkWidget *w, GPtrArray *data);
5319
d3832c88d562 [gaim-migrate @ 5691]
Benjamin Zeiss
parents: 5162
diff changeset
235
d3832c88d562 [gaim-migrate @ 5691]
Benjamin Zeiss
parents: 5162
diff changeset
236 /**
8901
0a8334a14c2d [gaim-migrate @ 9670]
Mark Doliner <markdoliner@pidgin.im>
parents: 8866
diff changeset
237 * Toggles the visibility of a widget.
0a8334a14c2d [gaim-migrate @ 9670]
Mark Doliner <markdoliner@pidgin.im>
parents: 8866
diff changeset
238 *
0a8334a14c2d [gaim-migrate @ 9670]
Mark Doliner <markdoliner@pidgin.im>
parents: 8866
diff changeset
239 * @param widget @c NULL. Used for signal handlers.
0a8334a14c2d [gaim-migrate @ 9670]
Mark Doliner <markdoliner@pidgin.im>
parents: 8866
diff changeset
240 * @param to_toggle The widget to toggle.
0a8334a14c2d [gaim-migrate @ 9670]
Mark Doliner <markdoliner@pidgin.im>
parents: 8866
diff changeset
241 */
15562
8c8249fe5e3c gaim_gtk to pidgin. I hope
Sean Egan <seanegan@pidgin.im>
parents: 15496
diff changeset
242 void pidgin_toggle_showhide(GtkWidget *widget, GtkWidget *to_toggle);
8901
0a8334a14c2d [gaim-migrate @ 9670]
Mark Doliner <markdoliner@pidgin.im>
parents: 8866
diff changeset
243
0a8334a14c2d [gaim-migrate @ 9670]
Mark Doliner <markdoliner@pidgin.im>
parents: 8866
diff changeset
244 /**
8735
01248ea222d3 [gaim-migrate @ 9490]
Jonathan Champ <royanee@users.sourceforge.net>
parents: 8289
diff changeset
245 * Adds a separator to a menu.
4687
91ad36873636 [gaim-migrate @ 4998]
Sean Egan <seanegan@pidgin.im>
parents: 4359
diff changeset
246 *
8735
01248ea222d3 [gaim-migrate @ 9490]
Jonathan Champ <royanee@users.sourceforge.net>
parents: 8289
diff changeset
247 * @param menu The menu to add a separator to.
17359
6dd3b7730470 Change pidgin_separator to return the separator added to the menu.
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 16446
diff changeset
248 *
6dd3b7730470 Change pidgin_separator to return the separator added to the menu.
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 16446
diff changeset
249 * @return The separator.
4687
91ad36873636 [gaim-migrate @ 4998]
Sean Egan <seanegan@pidgin.im>
parents: 4359
diff changeset
250 */
17359
6dd3b7730470 Change pidgin_separator to return the separator added to the menu.
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 16446
diff changeset
251 GtkWidget *pidgin_separator(GtkWidget *menu);
4687
91ad36873636 [gaim-migrate @ 4998]
Sean Egan <seanegan@pidgin.im>
parents: 4359
diff changeset
252
5162
f8293b913629 [gaim-migrate @ 5526]
Mark Doliner <markdoliner@pidgin.im>
parents: 5034
diff changeset
253 /**
f8293b913629 [gaim-migrate @ 5526]
Mark Doliner <markdoliner@pidgin.im>
parents: 5034
diff changeset
254 * Creates a menu item.
f8293b913629 [gaim-migrate @ 5526]
Mark Doliner <markdoliner@pidgin.im>
parents: 5034
diff changeset
255 *
f8293b913629 [gaim-migrate @ 5526]
Mark Doliner <markdoliner@pidgin.im>
parents: 5034
diff changeset
256 * @param menu The menu to which to append the menu item.
f8293b913629 [gaim-migrate @ 5526]
Mark Doliner <markdoliner@pidgin.im>
parents: 5034
diff changeset
257 * @param str The title to use for the newly created menu item.
f8293b913629 [gaim-migrate @ 5526]
Mark Doliner <markdoliner@pidgin.im>
parents: 5034
diff changeset
258 *
f8293b913629 [gaim-migrate @ 5526]
Mark Doliner <markdoliner@pidgin.im>
parents: 5034
diff changeset
259 * @return The newly created menu item.
f8293b913629 [gaim-migrate @ 5526]
Mark Doliner <markdoliner@pidgin.im>
parents: 5034
diff changeset
260 */
15568
cd19bb5a51b8 gtkutils changes
Sean Egan <seanegan@pidgin.im>
parents: 15562
diff changeset
261 GtkWidget *pidgin_new_item(GtkWidget *menu, const char *str);
5906
b9e4aaf4ae51 [gaim-migrate @ 6338]
Nathan Walp <nwalp@pidgin.im>
parents: 5877
diff changeset
262
b9e4aaf4ae51 [gaim-migrate @ 6338]
Nathan Walp <nwalp@pidgin.im>
parents: 5877
diff changeset
263 /**
b9e4aaf4ae51 [gaim-migrate @ 6338]
Nathan Walp <nwalp@pidgin.im>
parents: 5877
diff changeset
264 * Creates a check menu item.
b9e4aaf4ae51 [gaim-migrate @ 6338]
Nathan Walp <nwalp@pidgin.im>
parents: 5877
diff changeset
265 *
b9e4aaf4ae51 [gaim-migrate @ 6338]
Nathan Walp <nwalp@pidgin.im>
parents: 5877
diff changeset
266 * @param menu The menu to which to append the check menu item.
b9e4aaf4ae51 [gaim-migrate @ 6338]
Nathan Walp <nwalp@pidgin.im>
parents: 5877
diff changeset
267 * @param str The title to use for the newly created menu item.
26821
ad2ea323d0f2 Replace the deprecated GtkSignalFunc and GTK_SIGNAL_FUNC with GCallback and
Elliott Sales de Andrade <qulogic@pidgin.im>
parents: 25889
diff changeset
268 * @param cb A function to call when the menu item is activated.
5906
b9e4aaf4ae51 [gaim-migrate @ 6338]
Nathan Walp <nwalp@pidgin.im>
parents: 5877
diff changeset
269 * @param data Data to pass to the signal function.
b9e4aaf4ae51 [gaim-migrate @ 6338]
Nathan Walp <nwalp@pidgin.im>
parents: 5877
diff changeset
270 * @param checked The initial state of the check item
b9e4aaf4ae51 [gaim-migrate @ 6338]
Nathan Walp <nwalp@pidgin.im>
parents: 5877
diff changeset
271 *
b9e4aaf4ae51 [gaim-migrate @ 6338]
Nathan Walp <nwalp@pidgin.im>
parents: 5877
diff changeset
272 * @return The newly created menu item.
b9e4aaf4ae51 [gaim-migrate @ 6338]
Nathan Walp <nwalp@pidgin.im>
parents: 5877
diff changeset
273 */
15568
cd19bb5a51b8 gtkutils changes
Sean Egan <seanegan@pidgin.im>
parents: 15562
diff changeset
274 GtkWidget *pidgin_new_check_item(GtkWidget *menu, const char *str,
26821
ad2ea323d0f2 Replace the deprecated GtkSignalFunc and GTK_SIGNAL_FUNC with GCallback and
Elliott Sales de Andrade <qulogic@pidgin.im>
parents: 25889
diff changeset
275 GCallback cb, gpointer data, gboolean checked);
5162
f8293b913629 [gaim-migrate @ 5526]
Mark Doliner <markdoliner@pidgin.im>
parents: 5034
diff changeset
276
f8293b913629 [gaim-migrate @ 5526]
Mark Doliner <markdoliner@pidgin.im>
parents: 5034
diff changeset
277 /**
f8293b913629 [gaim-migrate @ 5526]
Mark Doliner <markdoliner@pidgin.im>
parents: 5034
diff changeset
278 * Creates a menu item.
f8293b913629 [gaim-migrate @ 5526]
Mark Doliner <markdoliner@pidgin.im>
parents: 5034
diff changeset
279 *
f8293b913629 [gaim-migrate @ 5526]
Mark Doliner <markdoliner@pidgin.im>
parents: 5034
diff changeset
280 * @param menu The menu to which to append the menu item.
f8293b913629 [gaim-migrate @ 5526]
Mark Doliner <markdoliner@pidgin.im>
parents: 5034
diff changeset
281 * @param str The title for the menu item.
5530
ba1ad464b56f [gaim-migrate @ 5930]
Christian Hammond <chipx86@chipx86.com>
parents: 5319
diff changeset
282 * @param icon An icon to place to the left of the menu item,
ba1ad464b56f [gaim-migrate @ 5930]
Christian Hammond <chipx86@chipx86.com>
parents: 5319
diff changeset
283 * or @c NULL for no icon.
26821
ad2ea323d0f2 Replace the deprecated GtkSignalFunc and GTK_SIGNAL_FUNC with GCallback and
Elliott Sales de Andrade <qulogic@pidgin.im>
parents: 25889
diff changeset
284 * @param cb A function to call when the menu item is activated.
5162
f8293b913629 [gaim-migrate @ 5526]
Mark Doliner <markdoliner@pidgin.im>
parents: 5034
diff changeset
285 * @param data Data to pass to the signal function.
f8293b913629 [gaim-migrate @ 5526]
Mark Doliner <markdoliner@pidgin.im>
parents: 5034
diff changeset
286 * @param accel_key Something.
f8293b913629 [gaim-migrate @ 5526]
Mark Doliner <markdoliner@pidgin.im>
parents: 5034
diff changeset
287 * @param accel_mods Something.
f8293b913629 [gaim-migrate @ 5526]
Mark Doliner <markdoliner@pidgin.im>
parents: 5034
diff changeset
288 * @param mod Something.
f8293b913629 [gaim-migrate @ 5526]
Mark Doliner <markdoliner@pidgin.im>
parents: 5034
diff changeset
289 *
f8293b913629 [gaim-migrate @ 5526]
Mark Doliner <markdoliner@pidgin.im>
parents: 5034
diff changeset
290 * @return The newly created menu item.
f8293b913629 [gaim-migrate @ 5526]
Mark Doliner <markdoliner@pidgin.im>
parents: 5034
diff changeset
291 */
15568
cd19bb5a51b8 gtkutils changes
Sean Egan <seanegan@pidgin.im>
parents: 15562
diff changeset
292 GtkWidget *pidgin_new_item_from_stock(GtkWidget *menu, const char *str,
26821
ad2ea323d0f2 Replace the deprecated GtkSignalFunc and GTK_SIGNAL_FUNC with GCallback and
Elliott Sales de Andrade <qulogic@pidgin.im>
parents: 25889
diff changeset
293 const char *icon, GCallback cb,
5530
ba1ad464b56f [gaim-migrate @ 5930]
Christian Hammond <chipx86@chipx86.com>
parents: 5319
diff changeset
294 gpointer data, guint accel_key,
ba1ad464b56f [gaim-migrate @ 5930]
Christian Hammond <chipx86@chipx86.com>
parents: 5319
diff changeset
295 guint accel_mods, char *mod);
ba1ad464b56f [gaim-migrate @ 5930]
Christian Hammond <chipx86@chipx86.com>
parents: 5319
diff changeset
296
ba1ad464b56f [gaim-migrate @ 5930]
Christian Hammond <chipx86@chipx86.com>
parents: 5319
diff changeset
297 /**
6372
27c3152351ce [gaim-migrate @ 6877]
Christian Hammond <chipx86@chipx86.com>
parents: 5966
diff changeset
298 * Creates a button with the specified text and stock icon.
27c3152351ce [gaim-migrate @ 6877]
Christian Hammond <chipx86@chipx86.com>
parents: 5966
diff changeset
299 *
27c3152351ce [gaim-migrate @ 6877]
Christian Hammond <chipx86@chipx86.com>
parents: 5966
diff changeset
300 * @param text The text for the button.
27c3152351ce [gaim-migrate @ 6877]
Christian Hammond <chipx86@chipx86.com>
parents: 5966
diff changeset
301 * @param icon The stock icon name.
27c3152351ce [gaim-migrate @ 6877]
Christian Hammond <chipx86@chipx86.com>
parents: 5966
diff changeset
302 * @param style The orientation of the button.
27c3152351ce [gaim-migrate @ 6877]
Christian Hammond <chipx86@chipx86.com>
parents: 5966
diff changeset
303 *
27c3152351ce [gaim-migrate @ 6877]
Christian Hammond <chipx86@chipx86.com>
parents: 5966
diff changeset
304 * @return The button.
27c3152351ce [gaim-migrate @ 6877]
Christian Hammond <chipx86@chipx86.com>
parents: 5966
diff changeset
305 */
15568
cd19bb5a51b8 gtkutils changes
Sean Egan <seanegan@pidgin.im>
parents: 15562
diff changeset
306 GtkWidget *pidgin_pixbuf_button_from_stock(const char *text, const char *icon,
cd19bb5a51b8 gtkutils changes
Sean Egan <seanegan@pidgin.im>
parents: 15562
diff changeset
307 PidginButtonOrientation style);
6372
27c3152351ce [gaim-migrate @ 6877]
Christian Hammond <chipx86@chipx86.com>
parents: 5966
diff changeset
308
27c3152351ce [gaim-migrate @ 6877]
Christian Hammond <chipx86@chipx86.com>
parents: 5966
diff changeset
309 /**
27c3152351ce [gaim-migrate @ 6877]
Christian Hammond <chipx86@chipx86.com>
parents: 5966
diff changeset
310 * Creates a toolbar button with the stock icon.
27c3152351ce [gaim-migrate @ 6877]
Christian Hammond <chipx86@chipx86.com>
parents: 5966
diff changeset
311 *
6720
cdc5348dd848 [gaim-migrate @ 7247]
Christian Hammond <chipx86@chipx86.com>
parents: 6646
diff changeset
312 * @param stock The stock icon name.
6372
27c3152351ce [gaim-migrate @ 6877]
Christian Hammond <chipx86@chipx86.com>
parents: 5966
diff changeset
313 *
27c3152351ce [gaim-migrate @ 6877]
Christian Hammond <chipx86@chipx86.com>
parents: 5966
diff changeset
314 * @return The button.
27c3152351ce [gaim-migrate @ 6877]
Christian Hammond <chipx86@chipx86.com>
parents: 5966
diff changeset
315 */
15568
cd19bb5a51b8 gtkutils changes
Sean Egan <seanegan@pidgin.im>
parents: 15562
diff changeset
316 GtkWidget *pidgin_pixbuf_toolbar_button_from_stock(const char *stock);
6372
27c3152351ce [gaim-migrate @ 6877]
Christian Hammond <chipx86@chipx86.com>
parents: 5966
diff changeset
317
27c3152351ce [gaim-migrate @ 6877]
Christian Hammond <chipx86@chipx86.com>
parents: 5966
diff changeset
318 /**
5530
ba1ad464b56f [gaim-migrate @ 5930]
Christian Hammond <chipx86@chipx86.com>
parents: 5319
diff changeset
319 * Creates a HIG preferences frame.
ba1ad464b56f [gaim-migrate @ 5930]
Christian Hammond <chipx86@chipx86.com>
parents: 5319
diff changeset
320 *
ba1ad464b56f [gaim-migrate @ 5930]
Christian Hammond <chipx86@chipx86.com>
parents: 5319
diff changeset
321 * @param parent The widget to put the frame into.
ba1ad464b56f [gaim-migrate @ 5930]
Christian Hammond <chipx86@chipx86.com>
parents: 5319
diff changeset
322 * @param title The title for the frame.
ba1ad464b56f [gaim-migrate @ 5930]
Christian Hammond <chipx86@chipx86.com>
parents: 5319
diff changeset
323 *
ba1ad464b56f [gaim-migrate @ 5930]
Christian Hammond <chipx86@chipx86.com>
parents: 5319
diff changeset
324 * @return The vbox to put things into.
ba1ad464b56f [gaim-migrate @ 5930]
Christian Hammond <chipx86@chipx86.com>
parents: 5319
diff changeset
325 */
15562
8c8249fe5e3c gaim_gtk to pidgin. I hope
Sean Egan <seanegan@pidgin.im>
parents: 15496
diff changeset
326 GtkWidget *pidgin_make_frame(GtkWidget *parent, const char *title);
5162
f8293b913629 [gaim-migrate @ 5526]
Mark Doliner <markdoliner@pidgin.im>
parents: 5034
diff changeset
327
5644
bc4c2f9f2bf8 [gaim-migrate @ 6058]
Christian Hammond <chipx86@chipx86.com>
parents: 5530
diff changeset
328 /**
bc4c2f9f2bf8 [gaim-migrate @ 6058]
Christian Hammond <chipx86@chipx86.com>
parents: 5530
diff changeset
329 * Creates a drop-down option menu filled with protocols.
bc4c2f9f2bf8 [gaim-migrate @ 6058]
Christian Hammond <chipx86@chipx86.com>
parents: 5530
diff changeset
330 *
7956
21d891f33b89 [gaim-migrate @ 8631]
Nathan Walp <nwalp@pidgin.im>
parents: 7751
diff changeset
331 * @param id The protocol to select by default.
5644
bc4c2f9f2bf8 [gaim-migrate @ 6058]
Christian Hammond <chipx86@chipx86.com>
parents: 5530
diff changeset
332 * @param cb The callback to call when a protocol is selected.
bc4c2f9f2bf8 [gaim-migrate @ 6058]
Christian Hammond <chipx86@chipx86.com>
parents: 5530
diff changeset
333 * @param user_data Data to pass to the callback function.
bc4c2f9f2bf8 [gaim-migrate @ 6058]
Christian Hammond <chipx86@chipx86.com>
parents: 5530
diff changeset
334 *
bc4c2f9f2bf8 [gaim-migrate @ 6058]
Christian Hammond <chipx86@chipx86.com>
parents: 5530
diff changeset
335 * @return The drop-down option menu.
bc4c2f9f2bf8 [gaim-migrate @ 6058]
Christian Hammond <chipx86@chipx86.com>
parents: 5530
diff changeset
336 */
15562
8c8249fe5e3c gaim_gtk to pidgin. I hope
Sean Egan <seanegan@pidgin.im>
parents: 15496
diff changeset
337 GtkWidget *pidgin_protocol_option_menu_new(const char *id,
5644
bc4c2f9f2bf8 [gaim-migrate @ 6058]
Christian Hammond <chipx86@chipx86.com>
parents: 5530
diff changeset
338 GCallback cb,
bc4c2f9f2bf8 [gaim-migrate @ 6058]
Christian Hammond <chipx86@chipx86.com>
parents: 5530
diff changeset
339 gpointer user_data);
bc4c2f9f2bf8 [gaim-migrate @ 6058]
Christian Hammond <chipx86@chipx86.com>
parents: 5530
diff changeset
340
5877
37695b88b248 [gaim-migrate @ 6309]
Christian Hammond <chipx86@chipx86.com>
parents: 5872
diff changeset
341 /**
18672
da4db1be5d98 Patch from nix_nix, adds 'get prpl name from account menu' API
Sean Egan <seanegan@pidgin.im>
parents: 18281
diff changeset
342 * Gets the currently selected protocol from a protocol drop down box.
da4db1be5d98 Patch from nix_nix, adds 'get prpl name from account menu' API
Sean Egan <seanegan@pidgin.im>
parents: 18281
diff changeset
343 *
da4db1be5d98 Patch from nix_nix, adds 'get prpl name from account menu' API
Sean Egan <seanegan@pidgin.im>
parents: 18281
diff changeset
344 * @param optmenu The drop-down option menu created by
da4db1be5d98 Patch from nix_nix, adds 'get prpl name from account menu' API
Sean Egan <seanegan@pidgin.im>
parents: 18281
diff changeset
345 * pidgin_account_option_menu_new.
da4db1be5d98 Patch from nix_nix, adds 'get prpl name from account menu' API
Sean Egan <seanegan@pidgin.im>
parents: 18281
diff changeset
346 * @return Returns the protocol ID that is currently selected.
da4db1be5d98 Patch from nix_nix, adds 'get prpl name from account menu' API
Sean Egan <seanegan@pidgin.im>
parents: 18281
diff changeset
347 */
da4db1be5d98 Patch from nix_nix, adds 'get prpl name from account menu' API
Sean Egan <seanegan@pidgin.im>
parents: 18281
diff changeset
348 const char *pidgin_protocol_option_menu_get_selected(GtkWidget *optmenu);
da4db1be5d98 Patch from nix_nix, adds 'get prpl name from account menu' API
Sean Egan <seanegan@pidgin.im>
parents: 18281
diff changeset
349
da4db1be5d98 Patch from nix_nix, adds 'get prpl name from account menu' API
Sean Egan <seanegan@pidgin.im>
parents: 18281
diff changeset
350 /**
5877
37695b88b248 [gaim-migrate @ 6309]
Christian Hammond <chipx86@chipx86.com>
parents: 5872
diff changeset
351 * Creates a drop-down option menu filled with accounts.
37695b88b248 [gaim-migrate @ 6309]
Christian Hammond <chipx86@chipx86.com>
parents: 5872
diff changeset
352 *
8289
234429bac6b5 [gaim-migrate @ 9013]
Christian Hammond <chipx86@chipx86.com>
parents: 8272
diff changeset
353 * @param default_account The account to select by default.
234429bac6b5 [gaim-migrate @ 9013]
Christian Hammond <chipx86@chipx86.com>
parents: 8272
diff changeset
354 * @param show_all Whether or not to show all accounts, or just
234429bac6b5 [gaim-migrate @ 9013]
Christian Hammond <chipx86@chipx86.com>
parents: 8272
diff changeset
355 * active accounts.
234429bac6b5 [gaim-migrate @ 9013]
Christian Hammond <chipx86@chipx86.com>
parents: 8272
diff changeset
356 * @param cb The callback to call when an account is selected.
234429bac6b5 [gaim-migrate @ 9013]
Christian Hammond <chipx86@chipx86.com>
parents: 8272
diff changeset
357 * @param filter_func A function for checking if an account should
234429bac6b5 [gaim-migrate @ 9013]
Christian Hammond <chipx86@chipx86.com>
parents: 8272
diff changeset
358 * be shown. This can be NULL.
234429bac6b5 [gaim-migrate @ 9013]
Christian Hammond <chipx86@chipx86.com>
parents: 8272
diff changeset
359 * @param user_data Data to pass to the callback function.
5877
37695b88b248 [gaim-migrate @ 6309]
Christian Hammond <chipx86@chipx86.com>
parents: 5872
diff changeset
360 *
37695b88b248 [gaim-migrate @ 6309]
Christian Hammond <chipx86@chipx86.com>
parents: 5872
diff changeset
361 * @return The drop-down option menu.
37695b88b248 [gaim-migrate @ 6309]
Christian Hammond <chipx86@chipx86.com>
parents: 5872
diff changeset
362 */
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15799
diff changeset
363 GtkWidget *pidgin_account_option_menu_new(PurpleAccount *default_account,
6646
b9a0b5eb74e6 [gaim-migrate @ 7171]
Christian Hammond <chipx86@chipx86.com>
parents: 6372
diff changeset
364 gboolean show_all, GCallback cb,
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15799
diff changeset
365 PurpleFilterAccountFunc filter_func, gpointer user_data);
5877
37695b88b248 [gaim-migrate @ 6309]
Christian Hammond <chipx86@chipx86.com>
parents: 5872
diff changeset
366
5943
8a052155157a [gaim-migrate @ 6384]
Christian Hammond <chipx86@chipx86.com>
parents: 5906
diff changeset
367 /**
8940
3e22cf150db0 [gaim-migrate @ 9710]
Mark Doliner <markdoliner@pidgin.im>
parents: 8901
diff changeset
368 * Gets the currently selected account from an account drop down box.
3e22cf150db0 [gaim-migrate @ 9710]
Mark Doliner <markdoliner@pidgin.im>
parents: 8901
diff changeset
369 *
18672
da4db1be5d98 Patch from nix_nix, adds 'get prpl name from account menu' API
Sean Egan <seanegan@pidgin.im>
parents: 18281
diff changeset
370 * @param optmenu The drop-down option menu created by
15562
8c8249fe5e3c gaim_gtk to pidgin. I hope
Sean Egan <seanegan@pidgin.im>
parents: 15496
diff changeset
371 * pidgin_account_option_menu_new.
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15799
diff changeset
372 * @return Returns the PurpleAccount that is currently selected.
8940
3e22cf150db0 [gaim-migrate @ 9710]
Mark Doliner <markdoliner@pidgin.im>
parents: 8901
diff changeset
373 */
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15799
diff changeset
374 PurpleAccount *pidgin_account_option_menu_get_selected(GtkWidget *optmenu);
8940
3e22cf150db0 [gaim-migrate @ 9710]
Mark Doliner <markdoliner@pidgin.im>
parents: 8901
diff changeset
375
3e22cf150db0 [gaim-migrate @ 9710]
Mark Doliner <markdoliner@pidgin.im>
parents: 8901
diff changeset
376 /**
9910
7b4465b92411 [gaim-migrate @ 10802]
Stu Tomlinson <nosnilmot@pidgin.im>
parents: 9791
diff changeset
377 * Sets the currently selected account for an account drop down box.
7b4465b92411 [gaim-migrate @ 10802]
Stu Tomlinson <nosnilmot@pidgin.im>
parents: 9791
diff changeset
378 *
7b4465b92411 [gaim-migrate @ 10802]
Stu Tomlinson <nosnilmot@pidgin.im>
parents: 9791
diff changeset
379 * @param optmenu The GtkOptionMenu created by
15562
8c8249fe5e3c gaim_gtk to pidgin. I hope
Sean Egan <seanegan@pidgin.im>
parents: 15496
diff changeset
380 * pidgin_account_option_menu_new.
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15799
diff changeset
381 * @param account The PurpleAccount to select.
9910
7b4465b92411 [gaim-migrate @ 10802]
Stu Tomlinson <nosnilmot@pidgin.im>
parents: 9791
diff changeset
382 */
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15799
diff changeset
383 void pidgin_account_option_menu_set_selected(GtkWidget *optmenu, PurpleAccount *account);
9910
7b4465b92411 [gaim-migrate @ 10802]
Stu Tomlinson <nosnilmot@pidgin.im>
parents: 9791
diff changeset
384
7b4465b92411 [gaim-migrate @ 10802]
Stu Tomlinson <nosnilmot@pidgin.im>
parents: 9791
diff changeset
385 /**
18966
6a0715b72b6b Screenname auto-completion filtering by Leonardo Fernandes, Fixes #519
Sean Egan <seanegan@pidgin.im>
parents: 18672
diff changeset
386 * Add autocompletion of screenames to an entry, supporting a filtering function.
6a0715b72b6b Screenname auto-completion filtering by Leonardo Fernandes, Fixes #519
Sean Egan <seanegan@pidgin.im>
parents: 18672
diff changeset
387 *
6a0715b72b6b Screenname auto-completion filtering by Leonardo Fernandes, Fixes #519
Sean Egan <seanegan@pidgin.im>
parents: 18672
diff changeset
388 * @param entry The GtkEntry on which to setup autocomplete.
31584
e616aaf95999 Fix a missing s/gaim_gtk/pidgin/
Richard Laager <rlaager@pidgin.im>
parents: 31321
diff changeset
389 * @param optmenu A menu for accounts, returned by pidgin_account_option_menu_new().
25889
26d9ca30335c Change "screen name" to "username" or "buddy name" in a whole bunch of
Mark Doliner <markdoliner@pidgin.im>
parents: 25888
diff changeset
390 * If @a optmenu is not @c NULL, it'll be updated when a username is chosen
18966
6a0715b72b6b Screenname auto-completion filtering by Leonardo Fernandes, Fixes #519
Sean Egan <seanegan@pidgin.im>
parents: 18672
diff changeset
391 * from the autocomplete list.
6a0715b72b6b Screenname auto-completion filtering by Leonardo Fernandes, Fixes #519
Sean Egan <seanegan@pidgin.im>
parents: 18672
diff changeset
392 * @param filter_func A function for checking if an autocomplete entry
6a0715b72b6b Screenname auto-completion filtering by Leonardo Fernandes, Fixes #519
Sean Egan <seanegan@pidgin.im>
parents: 18672
diff changeset
393 * should be shown. This can be @c NULL.
6a0715b72b6b Screenname auto-completion filtering by Leonardo Fernandes, Fixes #519
Sean Egan <seanegan@pidgin.im>
parents: 18672
diff changeset
394 * @param user_data The data to be passed to the filter_func function.
6a0715b72b6b Screenname auto-completion filtering by Leonardo Fernandes, Fixes #519
Sean Egan <seanegan@pidgin.im>
parents: 18672
diff changeset
395 */
6a0715b72b6b Screenname auto-completion filtering by Leonardo Fernandes, Fixes #519
Sean Egan <seanegan@pidgin.im>
parents: 18672
diff changeset
396 void pidgin_setup_screenname_autocomplete_with_filter(GtkWidget *entry, GtkWidget *optmenu, PidginFilterBuddyCompletionEntryFunc filter_func, gpointer user_data);
6a0715b72b6b Screenname auto-completion filtering by Leonardo Fernandes, Fixes #519
Sean Egan <seanegan@pidgin.im>
parents: 18672
diff changeset
397
6a0715b72b6b Screenname auto-completion filtering by Leonardo Fernandes, Fixes #519
Sean Egan <seanegan@pidgin.im>
parents: 18672
diff changeset
398 /**
25889
26d9ca30335c Change "screen name" to "username" or "buddy name" in a whole bunch of
Mark Doliner <markdoliner@pidgin.im>
parents: 25888
diff changeset
399 * The default filter function for username autocomplete.
18966
6a0715b72b6b Screenname auto-completion filtering by Leonardo Fernandes, Fixes #519
Sean Egan <seanegan@pidgin.im>
parents: 18672
diff changeset
400 *
6a0715b72b6b Screenname auto-completion filtering by Leonardo Fernandes, Fixes #519
Sean Egan <seanegan@pidgin.im>
parents: 18672
diff changeset
401 * @param completion_entry The completion entry to filter.
19862
3aa48ac21c45 This will silence a few warnings when building the Doxygen docs.
John Bailey <rekkanoryo@rekkanoryo.org>
parents: 19859
diff changeset
402 * @param all_accounts If this is @c FALSE, only the autocompletion entries
18966
6a0715b72b6b Screenname auto-completion filtering by Leonardo Fernandes, Fixes #519
Sean Egan <seanegan@pidgin.im>
parents: 18672
diff changeset
403 * which belong to an online account will be filtered.
6a0715b72b6b Screenname auto-completion filtering by Leonardo Fernandes, Fixes #519
Sean Egan <seanegan@pidgin.im>
parents: 18672
diff changeset
404 * @return Returns @c TRUE if the autocompletion entry is filtered.
6a0715b72b6b Screenname auto-completion filtering by Leonardo Fernandes, Fixes #519
Sean Egan <seanegan@pidgin.im>
parents: 18672
diff changeset
405 */
6a0715b72b6b Screenname auto-completion filtering by Leonardo Fernandes, Fixes #519
Sean Egan <seanegan@pidgin.im>
parents: 18672
diff changeset
406 gboolean pidgin_screenname_autocomplete_default_filter(const PidginBuddyCompletionEntry *completion_entry, gpointer all_accounts);
6a0715b72b6b Screenname auto-completion filtering by Leonardo Fernandes, Fixes #519
Sean Egan <seanegan@pidgin.im>
parents: 18672
diff changeset
407
6a0715b72b6b Screenname auto-completion filtering by Leonardo Fernandes, Fixes #519
Sean Egan <seanegan@pidgin.im>
parents: 18672
diff changeset
408 /**
7538
b20dbe9222e2 [gaim-migrate @ 8151]
Christian Hammond <chipx86@chipx86.com>
parents: 7420
diff changeset
409 * Sets up GtkSpell for the given GtkTextView, reporting errors
b20dbe9222e2 [gaim-migrate @ 8151]
Christian Hammond <chipx86@chipx86.com>
parents: 7420
diff changeset
410 * if encountered.
b20dbe9222e2 [gaim-migrate @ 8151]
Christian Hammond <chipx86@chipx86.com>
parents: 7420
diff changeset
411 *
15572
e069b22c1fc4 headers to pidgin
Sean Egan <seanegan@pidgin.im>
parents: 15568
diff changeset
412 * This does nothing if Pidgin is not compiled with GtkSpell support.
7538
b20dbe9222e2 [gaim-migrate @ 8151]
Christian Hammond <chipx86@chipx86.com>
parents: 7420
diff changeset
413 *
b20dbe9222e2 [gaim-migrate @ 8151]
Christian Hammond <chipx86@chipx86.com>
parents: 7420
diff changeset
414 * @param textview The textview widget to setup spellchecking for.
b20dbe9222e2 [gaim-migrate @ 8151]
Christian Hammond <chipx86@chipx86.com>
parents: 7420
diff changeset
415 */
15562
8c8249fe5e3c gaim_gtk to pidgin. I hope
Sean Egan <seanegan@pidgin.im>
parents: 15496
diff changeset
416 void pidgin_setup_gtkspell(GtkTextView *textview);
7538
b20dbe9222e2 [gaim-migrate @ 8151]
Christian Hammond <chipx86@chipx86.com>
parents: 7420
diff changeset
417
b20dbe9222e2 [gaim-migrate @ 8151]
Christian Hammond <chipx86@chipx86.com>
parents: 7420
diff changeset
418 /**
7420
af45f3aa95c9 [gaim-migrate @ 8022]
Etan Reisner <deryni@pidgin.im>
parents: 7114
diff changeset
419 * Save menu accelerators callback
af45f3aa95c9 [gaim-migrate @ 8022]
Etan Reisner <deryni@pidgin.im>
parents: 7114
diff changeset
420 */
15562
8c8249fe5e3c gaim_gtk to pidgin. I hope
Sean Egan <seanegan@pidgin.im>
parents: 15496
diff changeset
421 void pidgin_save_accels_cb(GtkAccelGroup *accel_group, guint arg1,
7538
b20dbe9222e2 [gaim-migrate @ 8151]
Christian Hammond <chipx86@chipx86.com>
parents: 7420
diff changeset
422 GdkModifierType arg2, GClosure *arg3,
b20dbe9222e2 [gaim-migrate @ 8151]
Christian Hammond <chipx86@chipx86.com>
parents: 7420
diff changeset
423 gpointer data);
7420
af45f3aa95c9 [gaim-migrate @ 8022]
Etan Reisner <deryni@pidgin.im>
parents: 7114
diff changeset
424
af45f3aa95c9 [gaim-migrate @ 8022]
Etan Reisner <deryni@pidgin.im>
parents: 7114
diff changeset
425 /**
af45f3aa95c9 [gaim-migrate @ 8022]
Etan Reisner <deryni@pidgin.im>
parents: 7114
diff changeset
426 * Save menu accelerators
af45f3aa95c9 [gaim-migrate @ 8022]
Etan Reisner <deryni@pidgin.im>
parents: 7114
diff changeset
427 */
15562
8c8249fe5e3c gaim_gtk to pidgin. I hope
Sean Egan <seanegan@pidgin.im>
parents: 15496
diff changeset
428 gboolean pidgin_save_accels(gpointer data);
7420
af45f3aa95c9 [gaim-migrate @ 8022]
Etan Reisner <deryni@pidgin.im>
parents: 7114
diff changeset
429
af45f3aa95c9 [gaim-migrate @ 8022]
Etan Reisner <deryni@pidgin.im>
parents: 7114
diff changeset
430 /**
af45f3aa95c9 [gaim-migrate @ 8022]
Etan Reisner <deryni@pidgin.im>
parents: 7114
diff changeset
431 * Load menu accelerators
af45f3aa95c9 [gaim-migrate @ 8022]
Etan Reisner <deryni@pidgin.im>
parents: 7114
diff changeset
432 */
15562
8c8249fe5e3c gaim_gtk to pidgin. I hope
Sean Egan <seanegan@pidgin.im>
parents: 15496
diff changeset
433 void pidgin_load_accels(void);
7420
af45f3aa95c9 [gaim-migrate @ 8022]
Etan Reisner <deryni@pidgin.im>
parents: 7114
diff changeset
434
7712
74af9358b808 [gaim-migrate @ 8357]
Christian Hammond <chipx86@chipx86.com>
parents: 7538
diff changeset
435 /**
17360
4b04b2ee459a Use utility functions to get user info. Closes #964.
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 17359
diff changeset
436 * Get information about a user. Show immediate feedback.
4b04b2ee459a Use utility functions to get user info. Closes #964.
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 17359
diff changeset
437 *
4b04b2ee459a Use utility functions to get user info. Closes #964.
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 17359
diff changeset
438 * @param conn The connection to get information from.
4b04b2ee459a Use utility functions to get user info. Closes #964.
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 17359
diff changeset
439 * @param name The user to get information about.
20940
925d3d68b3af Doxygen @since tags for libpurple and pidgin.
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 20147
diff changeset
440 *
925d3d68b3af Doxygen @since tags for libpurple and pidgin.
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 20147
diff changeset
441 * @since 2.1.0
17360
4b04b2ee459a Use utility functions to get user info. Closes #964.
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 17359
diff changeset
442 */
4b04b2ee459a Use utility functions to get user info. Closes #964.
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 17359
diff changeset
443 void pidgin_retrieve_user_info(PurpleConnection *conn, const char *name);
4b04b2ee459a Use utility functions to get user info. Closes #964.
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 17359
diff changeset
444
4b04b2ee459a Use utility functions to get user info. Closes #964.
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 17359
diff changeset
445 /**
18281
f7dd07e1e434 Show immediate feedback when getting information about someone in a chat.
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 18278
diff changeset
446 * Get information about a user in a chat. Show immediate feedback.
f7dd07e1e434 Show immediate feedback when getting information about someone in a chat.
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 18278
diff changeset
447 *
f7dd07e1e434 Show immediate feedback when getting information about someone in a chat.
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 18278
diff changeset
448 * @param conn The connection to get information from.
f7dd07e1e434 Show immediate feedback when getting information about someone in a chat.
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 18278
diff changeset
449 * @param name The user to get information about.
f7dd07e1e434 Show immediate feedback when getting information about someone in a chat.
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 18278
diff changeset
450 * @param chatid The chat id.
20940
925d3d68b3af Doxygen @since tags for libpurple and pidgin.
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 20147
diff changeset
451 *
925d3d68b3af Doxygen @since tags for libpurple and pidgin.
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 20147
diff changeset
452 * @since 2.1.0
18281
f7dd07e1e434 Show immediate feedback when getting information about someone in a chat.
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 18278
diff changeset
453 */
f7dd07e1e434 Show immediate feedback when getting information about someone in a chat.
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 18278
diff changeset
454 void pidgin_retrieve_user_info_in_chat(PurpleConnection *conn, const char *name, int chatid);
f7dd07e1e434 Show immediate feedback when getting information about someone in a chat.
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 18278
diff changeset
455
f7dd07e1e434 Show immediate feedback when getting information about someone in a chat.
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 18278
diff changeset
456 /**
7712
74af9358b808 [gaim-migrate @ 8357]
Christian Hammond <chipx86@chipx86.com>
parents: 7538
diff changeset
457 * Parses an application/x-im-contact MIME message and returns the
74af9358b808 [gaim-migrate @ 8357]
Christian Hammond <chipx86@chipx86.com>
parents: 7538
diff changeset
458 * data inside.
74af9358b808 [gaim-migrate @ 8357]
Christian Hammond <chipx86@chipx86.com>
parents: 7538
diff changeset
459 *
74af9358b808 [gaim-migrate @ 8357]
Christian Hammond <chipx86@chipx86.com>
parents: 7538
diff changeset
460 * @param msg The MIME message.
74af9358b808 [gaim-migrate @ 8357]
Christian Hammond <chipx86@chipx86.com>
parents: 7538
diff changeset
461 * @param all_accounts If TRUE, check all compatible accounts, online or
74af9358b808 [gaim-migrate @ 8357]
Christian Hammond <chipx86@chipx86.com>
parents: 7538
diff changeset
462 * offline. If FALSE, check only online accounts.
74af9358b808 [gaim-migrate @ 8357]
Christian Hammond <chipx86@chipx86.com>
parents: 7538
diff changeset
463 * @param ret_account The best guess at a compatible protocol,
74af9358b808 [gaim-migrate @ 8357]
Christian Hammond <chipx86@chipx86.com>
parents: 7538
diff changeset
464 * based on ret_protocol. If NULL, no account was found.
74af9358b808 [gaim-migrate @ 8357]
Christian Hammond <chipx86@chipx86.com>
parents: 7538
diff changeset
465 * @param ret_protocol The returned protocol type.
74af9358b808 [gaim-migrate @ 8357]
Christian Hammond <chipx86@chipx86.com>
parents: 7538
diff changeset
466 * @param ret_username The returned username.
74af9358b808 [gaim-migrate @ 8357]
Christian Hammond <chipx86@chipx86.com>
parents: 7538
diff changeset
467 * @param ret_alias The returned alias.
74af9358b808 [gaim-migrate @ 8357]
Christian Hammond <chipx86@chipx86.com>
parents: 7538
diff changeset
468 *
74af9358b808 [gaim-migrate @ 8357]
Christian Hammond <chipx86@chipx86.com>
parents: 7538
diff changeset
469 * @return TRUE if the message was parsed for the minimum necessary data.
74af9358b808 [gaim-migrate @ 8357]
Christian Hammond <chipx86@chipx86.com>
parents: 7538
diff changeset
470 * FALSE otherwise.
74af9358b808 [gaim-migrate @ 8357]
Christian Hammond <chipx86@chipx86.com>
parents: 7538
diff changeset
471 */
15562
8c8249fe5e3c gaim_gtk to pidgin. I hope
Sean Egan <seanegan@pidgin.im>
parents: 15496
diff changeset
472 gboolean pidgin_parse_x_im_contact(const char *msg, gboolean all_accounts,
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15799
diff changeset
473 PurpleAccount **ret_account,
7712
74af9358b808 [gaim-migrate @ 8357]
Christian Hammond <chipx86@chipx86.com>
parents: 7538
diff changeset
474 char **ret_protocol, char **ret_username,
74af9358b808 [gaim-migrate @ 8357]
Christian Hammond <chipx86@chipx86.com>
parents: 7538
diff changeset
475 char **ret_alias);
74af9358b808 [gaim-migrate @ 8357]
Christian Hammond <chipx86@chipx86.com>
parents: 7538
diff changeset
476
8137
ca2132ad085e [gaim-migrate @ 8842]
Marc Mulcahy
parents: 8046
diff changeset
477 /**
25888
d0fdd378a635 Remove trailing whitespace
Mark Doliner <markdoliner@pidgin.im>
parents: 25885
diff changeset
478 * Sets an ATK name for a given widget. Also sets the labelled-by
8137
ca2132ad085e [gaim-migrate @ 8842]
Marc Mulcahy
parents: 8046
diff changeset
479 * and label-for ATK relationships.
ca2132ad085e [gaim-migrate @ 8842]
Marc Mulcahy
parents: 8046
diff changeset
480 *
8866
8a910a9b8865 [gaim-migrate @ 9634]
Nathan Walp <nwalp@pidgin.im>
parents: 8741
diff changeset
481 * @param w The widget that we want to name.
8a910a9b8865 [gaim-migrate @ 9634]
Nathan Walp <nwalp@pidgin.im>
parents: 8741
diff changeset
482 * @param l A GtkLabel that we want to use as the ATK name for the widget.
8137
ca2132ad085e [gaim-migrate @ 8842]
Marc Mulcahy
parents: 8046
diff changeset
483 */
15568
cd19bb5a51b8 gtkutils changes
Sean Egan <seanegan@pidgin.im>
parents: 15562
diff changeset
484 void pidgin_set_accessible_label(GtkWidget *w, GtkWidget *l);
8143
ce4b6383777b [gaim-migrate @ 8851]
Nathan Fredrickson <nathan@silverorange.com>
parents: 8137
diff changeset
485
ce4b6383777b [gaim-migrate @ 8851]
Nathan Fredrickson <nathan@silverorange.com>
parents: 8137
diff changeset
486 /**
19547
0c3fcdc6a025 Separate out setting up the labelled-by and label-for ATK relationships
Casey Harkins <charkins@pidgin.im>
parents: 18966
diff changeset
487 * Sets the labelled-by and label-for ATK relationships.
0c3fcdc6a025 Separate out setting up the labelled-by and label-for ATK relationships
Casey Harkins <charkins@pidgin.im>
parents: 18966
diff changeset
488 *
0c3fcdc6a025 Separate out setting up the labelled-by and label-for ATK relationships
Casey Harkins <charkins@pidgin.im>
parents: 18966
diff changeset
489 * @param w The widget that we want to label.
0c3fcdc6a025 Separate out setting up the labelled-by and label-for ATK relationships
Casey Harkins <charkins@pidgin.im>
parents: 18966
diff changeset
490 * @param l A GtkLabel that we want to use as the label for the widget.
20940
925d3d68b3af Doxygen @since tags for libpurple and pidgin.
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 20147
diff changeset
491 *
925d3d68b3af Doxygen @since tags for libpurple and pidgin.
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 20147
diff changeset
492 * @since 2.2.0
19547
0c3fcdc6a025 Separate out setting up the labelled-by and label-for ATK relationships
Casey Harkins <charkins@pidgin.im>
parents: 18966
diff changeset
493 */
0c3fcdc6a025 Separate out setting up the labelled-by and label-for ATK relationships
Casey Harkins <charkins@pidgin.im>
parents: 18966
diff changeset
494 void pidgin_set_accessible_relations(GtkWidget *w, GtkWidget *l);
0c3fcdc6a025 Separate out setting up the labelled-by and label-for ATK relationships
Casey Harkins <charkins@pidgin.im>
parents: 18966
diff changeset
495
0c3fcdc6a025 Separate out setting up the labelled-by and label-for ATK relationships
Casey Harkins <charkins@pidgin.im>
parents: 18966
diff changeset
496 /**
18238
b38c33d2d71e Reduce code duplication and keep gtk 2.0 compatibility by making
Stu Tomlinson <nosnilmot@pidgin.im>
parents: 18105
diff changeset
497 * A helper function for GtkMenuPositionFuncs. This ensures the menu will
b38c33d2d71e Reduce code duplication and keep gtk 2.0 compatibility by making
Stu Tomlinson <nosnilmot@pidgin.im>
parents: 18105
diff changeset
498 * be kept on screen if possible.
b38c33d2d71e Reduce code duplication and keep gtk 2.0 compatibility by making
Stu Tomlinson <nosnilmot@pidgin.im>
parents: 18105
diff changeset
499 *
b38c33d2d71e Reduce code duplication and keep gtk 2.0 compatibility by making
Stu Tomlinson <nosnilmot@pidgin.im>
parents: 18105
diff changeset
500 * @param menu The menu we are positioning.
b38c33d2d71e Reduce code duplication and keep gtk 2.0 compatibility by making
Stu Tomlinson <nosnilmot@pidgin.im>
parents: 18105
diff changeset
501 * @param x Address of the gint representing the horizontal position
b38c33d2d71e Reduce code duplication and keep gtk 2.0 compatibility by making
Stu Tomlinson <nosnilmot@pidgin.im>
parents: 18105
diff changeset
502 * where the menu shall be drawn. This is an output parameter.
b38c33d2d71e Reduce code duplication and keep gtk 2.0 compatibility by making
Stu Tomlinson <nosnilmot@pidgin.im>
parents: 18105
diff changeset
503 * @param y Address of the gint representing the vertical position
b38c33d2d71e Reduce code duplication and keep gtk 2.0 compatibility by making
Stu Tomlinson <nosnilmot@pidgin.im>
parents: 18105
diff changeset
504 * where the menu shall be drawn. This is an output parameter.
b38c33d2d71e Reduce code duplication and keep gtk 2.0 compatibility by making
Stu Tomlinson <nosnilmot@pidgin.im>
parents: 18105
diff changeset
505 * @param push_in This is an output parameter?
19862
3aa48ac21c45 This will silence a few warnings when building the Doxygen docs.
John Bailey <rekkanoryo@rekkanoryo.org>
parents: 19859
diff changeset
506 * @param data Not used by this particular position function.
20940
925d3d68b3af Doxygen @since tags for libpurple and pidgin.
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 20147
diff changeset
507 *
925d3d68b3af Doxygen @since tags for libpurple and pidgin.
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 20147
diff changeset
508 * @since 2.1.0
18238
b38c33d2d71e Reduce code duplication and keep gtk 2.0 compatibility by making
Stu Tomlinson <nosnilmot@pidgin.im>
parents: 18105
diff changeset
509 */
b38c33d2d71e Reduce code duplication and keep gtk 2.0 compatibility by making
Stu Tomlinson <nosnilmot@pidgin.im>
parents: 18105
diff changeset
510 void pidgin_menu_position_func_helper(GtkMenu *menu, gint *x, gint *y,
b38c33d2d71e Reduce code duplication and keep gtk 2.0 compatibility by making
Stu Tomlinson <nosnilmot@pidgin.im>
parents: 18105
diff changeset
511 gboolean *push_in, gpointer data);
b38c33d2d71e Reduce code duplication and keep gtk 2.0 compatibility by making
Stu Tomlinson <nosnilmot@pidgin.im>
parents: 18105
diff changeset
512
b38c33d2d71e Reduce code duplication and keep gtk 2.0 compatibility by making
Stu Tomlinson <nosnilmot@pidgin.im>
parents: 18105
diff changeset
513 /**
25888
d0fdd378a635 Remove trailing whitespace
Mark Doliner <markdoliner@pidgin.im>
parents: 25885
diff changeset
514 * A valid GtkMenuPositionFunc. This is used to determine where
d0fdd378a635 Remove trailing whitespace
Mark Doliner <markdoliner@pidgin.im>
parents: 25885
diff changeset
515 * to draw context menus when the menu is activated with the
d0fdd378a635 Remove trailing whitespace
Mark Doliner <markdoliner@pidgin.im>
parents: 25885
diff changeset
516 * keyboard (shift+F10). If the menu is activated with the mouse,
d0fdd378a635 Remove trailing whitespace
Mark Doliner <markdoliner@pidgin.im>
parents: 25885
diff changeset
517 * then you should just use GTK's built-in position function,
8143
ce4b6383777b [gaim-migrate @ 8851]
Nathan Fredrickson <nathan@silverorange.com>
parents: 8137
diff changeset
518 * because it does a better job of positioning the menu.
ce4b6383777b [gaim-migrate @ 8851]
Nathan Fredrickson <nathan@silverorange.com>
parents: 8137
diff changeset
519 *
ce4b6383777b [gaim-migrate @ 8851]
Nathan Fredrickson <nathan@silverorange.com>
parents: 8137
diff changeset
520 * @param menu The menu we are positioning.
ce4b6383777b [gaim-migrate @ 8851]
Nathan Fredrickson <nathan@silverorange.com>
parents: 8137
diff changeset
521 * @param x Address of the gint representing the horizontal position
ce4b6383777b [gaim-migrate @ 8851]
Nathan Fredrickson <nathan@silverorange.com>
parents: 8137
diff changeset
522 * where the menu shall be drawn. This is an output parameter.
ce4b6383777b [gaim-migrate @ 8851]
Nathan Fredrickson <nathan@silverorange.com>
parents: 8137
diff changeset
523 * @param y Address of the gint representing the vertical position
ce4b6383777b [gaim-migrate @ 8851]
Nathan Fredrickson <nathan@silverorange.com>
parents: 8137
diff changeset
524 * where the menu shall be drawn. This is an output parameter.
ce4b6383777b [gaim-migrate @ 8851]
Nathan Fredrickson <nathan@silverorange.com>
parents: 8137
diff changeset
525 * @param push_in This is an output parameter?
ce4b6383777b [gaim-migrate @ 8851]
Nathan Fredrickson <nathan@silverorange.com>
parents: 8137
diff changeset
526 * @param user_data Not used by this particular position function.
ce4b6383777b [gaim-migrate @ 8851]
Nathan Fredrickson <nathan@silverorange.com>
parents: 8137
diff changeset
527 */
15562
8c8249fe5e3c gaim_gtk to pidgin. I hope
Sean Egan <seanegan@pidgin.im>
parents: 15496
diff changeset
528 void pidgin_treeview_popup_menu_position_func(GtkMenu *menu,
8143
ce4b6383777b [gaim-migrate @ 8851]
Nathan Fredrickson <nathan@silverorange.com>
parents: 8137
diff changeset
529 gint *x,
ce4b6383777b [gaim-migrate @ 8851]
Nathan Fredrickson <nathan@silverorange.com>
parents: 8137
diff changeset
530 gint *y,
ce4b6383777b [gaim-migrate @ 8851]
Nathan Fredrickson <nathan@silverorange.com>
parents: 8137
diff changeset
531 gboolean *push_in,
ce4b6383777b [gaim-migrate @ 8851]
Nathan Fredrickson <nathan@silverorange.com>
parents: 8137
diff changeset
532 gpointer user_data);
8137
ca2132ad085e [gaim-migrate @ 8842]
Marc Mulcahy
parents: 8046
diff changeset
533
10061
2833056ea11c [gaim-migrate @ 11033]
Stu Tomlinson <nosnilmot@pidgin.im>
parents: 9910
diff changeset
534 /**
10229
39ffee70c286 [gaim-migrate @ 11364]
Alceste Scalas <alceste.scalas@gmx.net>
parents: 10207
diff changeset
535 * Manages drag'n'drop of files.
39ffee70c286 [gaim-migrate @ 11364]
Alceste Scalas <alceste.scalas@gmx.net>
parents: 10207
diff changeset
536 *
39ffee70c286 [gaim-migrate @ 11364]
Alceste Scalas <alceste.scalas@gmx.net>
parents: 10207
diff changeset
537 * @param sd GtkSelectionData for managing drag'n'drop
10233
7b542749ccb6 [gaim-migrate @ 11368]
Mark Doliner <markdoliner@pidgin.im>
parents: 10229
diff changeset
538 * @param account Account to be used (may be NULL if conv is not NULL)
10229
39ffee70c286 [gaim-migrate @ 11364]
Alceste Scalas <alceste.scalas@gmx.net>
parents: 10207
diff changeset
539 * @param who Buddy name (may be NULL if conv is not NULL)
39ffee70c286 [gaim-migrate @ 11364]
Alceste Scalas <alceste.scalas@gmx.net>
parents: 10207
diff changeset
540 */
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15799
diff changeset
541 void pidgin_dnd_file_manage(GtkSelectionData *sd, PurpleAccount *account, const char *who);
10229
39ffee70c286 [gaim-migrate @ 11364]
Alceste Scalas <alceste.scalas@gmx.net>
parents: 10207
diff changeset
542
10483
e7b09a8b1f52 [gaim-migrate @ 11773]
Nathan Walp <nwalp@pidgin.im>
parents: 10233
diff changeset
543 /**
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15799
diff changeset
544 * Convenience wrapper for purple_buddy_icon_get_scale_size
10483
e7b09a8b1f52 [gaim-migrate @ 11773]
Nathan Walp <nwalp@pidgin.im>
parents: 10233
diff changeset
545 */
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15799
diff changeset
546 void pidgin_buddy_icon_get_scale_size(GdkPixbuf *buf, PurpleBuddyIconSpec *spec, PurpleIconScaleRules rules, int *width, int *height);
10483
e7b09a8b1f52 [gaim-migrate @ 11773]
Nathan Walp <nwalp@pidgin.im>
parents: 10233
diff changeset
547
12080
2aaca2265a51 [gaim-migrate @ 14377]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 12067
diff changeset
548 /**
2aaca2265a51 [gaim-migrate @ 14377]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 12067
diff changeset
549 * Returns the base image to represent the account, based on
2aaca2265a51 [gaim-migrate @ 14377]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 12067
diff changeset
550 * the currently selected theme.
2aaca2265a51 [gaim-migrate @ 14377]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 12067
diff changeset
551 *
13091
b5ed878998dd [gaim-migrate @ 15452]
Mark Doliner <markdoliner@pidgin.im>
parents: 12919
diff changeset
552 * @param account The account.
15496
76b5ca00a36c I think this takes care of protocol icons. Note there are still places
Sean Egan <seanegan@pidgin.im>
parents: 15474
diff changeset
553 * @param size The size of the icon to return.
12080
2aaca2265a51 [gaim-migrate @ 14377]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 12067
diff changeset
554 *
13091
b5ed878998dd [gaim-migrate @ 15452]
Mark Doliner <markdoliner@pidgin.im>
parents: 12919
diff changeset
555 * @return A newly-created pixbuf with a reference count of 1,
b5ed878998dd [gaim-migrate @ 15452]
Mark Doliner <markdoliner@pidgin.im>
parents: 12919
diff changeset
556 * or NULL if any of several error conditions occurred:
b5ed878998dd [gaim-migrate @ 15452]
Mark Doliner <markdoliner@pidgin.im>
parents: 12919
diff changeset
557 * the file could not be opened, there was no loader
b5ed878998dd [gaim-migrate @ 15452]
Mark Doliner <markdoliner@pidgin.im>
parents: 12919
diff changeset
558 * for the file's format, there was not enough memory
b5ed878998dd [gaim-migrate @ 15452]
Mark Doliner <markdoliner@pidgin.im>
parents: 12919
diff changeset
559 * to allocate the image buffer, or the image file
b5ed878998dd [gaim-migrate @ 15452]
Mark Doliner <markdoliner@pidgin.im>
parents: 12919
diff changeset
560 * contained invalid data.
12080
2aaca2265a51 [gaim-migrate @ 14377]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 12067
diff changeset
561 */
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15799
diff changeset
562 GdkPixbuf *pidgin_create_prpl_icon(PurpleAccount *account, PidginPrplIconSize size);
12080
2aaca2265a51 [gaim-migrate @ 14377]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 12067
diff changeset
563
2aaca2265a51 [gaim-migrate @ 14377]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 12067
diff changeset
564 /**
15799
ba7af742a0d1 Change some old, busted status icon stuff to use the new hotness
Sean Egan <seanegan@pidgin.im>
parents: 15577
diff changeset
565 * Creates a status icon for a given primitve
13091
b5ed878998dd [gaim-migrate @ 15452]
Mark Doliner <markdoliner@pidgin.im>
parents: 12919
diff changeset
566 *
15799
ba7af742a0d1 Change some old, busted status icon stuff to use the new hotness
Sean Egan <seanegan@pidgin.im>
parents: 15577
diff changeset
567 * @param primitive The status primitive
ba7af742a0d1 Change some old, busted status icon stuff to use the new hotness
Sean Egan <seanegan@pidgin.im>
parents: 15577
diff changeset
568 * @param w The widget to render this
ba7af742a0d1 Change some old, busted status icon stuff to use the new hotness
Sean Egan <seanegan@pidgin.im>
parents: 15577
diff changeset
569 * @param size The icon size to render at
16002
Richard Nelson <wabz@pidgin.im>
parents: 15997
diff changeset
570 * @return A GdkPixbuf, created from stock
13091
b5ed878998dd [gaim-migrate @ 15452]
Mark Doliner <markdoliner@pidgin.im>
parents: 12919
diff changeset
571 */
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15799
diff changeset
572 GdkPixbuf * pidgin_create_status_icon(PurpleStatusPrimitive primitive, GtkWidget *w, const char *size);
13091
b5ed878998dd [gaim-migrate @ 15452]
Mark Doliner <markdoliner@pidgin.im>
parents: 12919
diff changeset
573
26846
d5546da39e44 Use stock-id in the status editor window too.
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 26821
diff changeset
574 /**
d5546da39e44 Use stock-id in the status editor window too.
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 26821
diff changeset
575 * Returns an appropriate stock-id for a status primitive.
d5546da39e44 Use stock-id in the status editor window too.
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 26821
diff changeset
576 *
d5546da39e44 Use stock-id in the status editor window too.
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 26821
diff changeset
577 * @param prim The status primitive
d5546da39e44 Use stock-id in the status editor window too.
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 26821
diff changeset
578 *
d5546da39e44 Use stock-id in the status editor window too.
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 26821
diff changeset
579 * @return The stock-id
d5546da39e44 Use stock-id in the status editor window too.
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 26821
diff changeset
580 *
d5546da39e44 Use stock-id in the status editor window too.
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 26821
diff changeset
581 * @since 2.6.0
d5546da39e44 Use stock-id in the status editor window too.
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 26821
diff changeset
582 */
d5546da39e44 Use stock-id in the status editor window too.
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 26821
diff changeset
583 const char *pidgin_stock_id_from_status_primitive(PurpleStatusPrimitive prim);
10229
39ffee70c286 [gaim-migrate @ 11364]
Alceste Scalas <alceste.scalas@gmx.net>
parents: 10207
diff changeset
584
12919
519199cca273 [gaim-migrate @ 15272]
Etan Reisner <deryni@pidgin.im>
parents: 12323
diff changeset
585 /**
26894
a48de595d2ee New API to get the stock-id for a presence.
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 26846
diff changeset
586 * Returns an appropriate stock-id for a PurplePresence.
a48de595d2ee New API to get the stock-id for a presence.
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 26846
diff changeset
587 *
a48de595d2ee New API to get the stock-id for a presence.
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 26846
diff changeset
588 * @param presence The presence.
a48de595d2ee New API to get the stock-id for a presence.
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 26846
diff changeset
589 *
a48de595d2ee New API to get the stock-id for a presence.
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 26846
diff changeset
590 * @return The stock-id
a48de595d2ee New API to get the stock-id for a presence.
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 26846
diff changeset
591 *
a48de595d2ee New API to get the stock-id for a presence.
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 26846
diff changeset
592 * @since 2.6.0
a48de595d2ee New API to get the stock-id for a presence.
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 26846
diff changeset
593 */
a48de595d2ee New API to get the stock-id for a presence.
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 26846
diff changeset
594 const char *pidgin_stock_id_from_presence(PurplePresence *presence);
a48de595d2ee New API to get the stock-id for a presence.
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 26846
diff changeset
595
a48de595d2ee New API to get the stock-id for a presence.
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 26846
diff changeset
596 /**
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15799
diff changeset
597 * Append a PurpleMenuAction to a menu.
12919
519199cca273 [gaim-migrate @ 15272]
Etan Reisner <deryni@pidgin.im>
parents: 12323
diff changeset
598 *
13785
4ee261bcc567 [gaim-migrate @ 16195]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 13470
diff changeset
599 * @param menu The menu to append to.
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15799
diff changeset
600 * @param act The PurpleMenuAction to append.
13785
4ee261bcc567 [gaim-migrate @ 16195]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 13470
diff changeset
601 * @param gobject The object to be passed to the action callback.
17363
f16ea1b259e2 Use purple_conversation_extended_menu to add items in the conversation
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 17360
diff changeset
602 *
f16ea1b259e2 Use purple_conversation_extended_menu to add items in the conversation
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 17360
diff changeset
603 * @return The menuitem added.
12919
519199cca273 [gaim-migrate @ 15272]
Etan Reisner <deryni@pidgin.im>
parents: 12323
diff changeset
604 */
17363
f16ea1b259e2 Use purple_conversation_extended_menu to add items in the conversation
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 17360
diff changeset
605 GtkWidget *pidgin_append_menu_action(GtkWidget *menu, PurpleMenuAction *act,
12919
519199cca273 [gaim-migrate @ 15272]
Etan Reisner <deryni@pidgin.im>
parents: 12323
diff changeset
606 gpointer gobject);
519199cca273 [gaim-migrate @ 15272]
Etan Reisner <deryni@pidgin.im>
parents: 12323
diff changeset
607
13435
4c22eed6e0a6 [gaim-migrate @ 15809]
Richard Laager <rlaager@pidgin.im>
parents: 13361
diff changeset
608 /**
4c22eed6e0a6 [gaim-migrate @ 15809]
Richard Laager <rlaager@pidgin.im>
parents: 13361
diff changeset
609 * Sets the mouse pointer for a GtkWidget.
4c22eed6e0a6 [gaim-migrate @ 15809]
Richard Laager <rlaager@pidgin.im>
parents: 13361
diff changeset
610 *
4c22eed6e0a6 [gaim-migrate @ 15809]
Richard Laager <rlaager@pidgin.im>
parents: 13361
diff changeset
611 * After setting the cursor, the display is flushed, so the change will
4c22eed6e0a6 [gaim-migrate @ 15809]
Richard Laager <rlaager@pidgin.im>
parents: 13361
diff changeset
612 * take effect immediately.
4c22eed6e0a6 [gaim-migrate @ 15809]
Richard Laager <rlaager@pidgin.im>
parents: 13361
diff changeset
613 *
13470
5550131ec50b [gaim-migrate @ 15845]
Richard Laager <rlaager@pidgin.im>
parents: 13435
diff changeset
614 * If the window for @a widget is @c NULL, this function simply returns.
13435
4c22eed6e0a6 [gaim-migrate @ 15809]
Richard Laager <rlaager@pidgin.im>
parents: 13361
diff changeset
615 *
4c22eed6e0a6 [gaim-migrate @ 15809]
Richard Laager <rlaager@pidgin.im>
parents: 13361
diff changeset
616 * @param widget The widget for which to set the mouse pointer
4c22eed6e0a6 [gaim-migrate @ 15809]
Richard Laager <rlaager@pidgin.im>
parents: 13361
diff changeset
617 * @param cursor_type The type of cursor to set
4c22eed6e0a6 [gaim-migrate @ 15809]
Richard Laager <rlaager@pidgin.im>
parents: 13361
diff changeset
618 */
15562
8c8249fe5e3c gaim_gtk to pidgin. I hope
Sean Egan <seanegan@pidgin.im>
parents: 15496
diff changeset
619 void pidgin_set_cursor(GtkWidget *widget, GdkCursorType cursor_type);
13435
4c22eed6e0a6 [gaim-migrate @ 15809]
Richard Laager <rlaager@pidgin.im>
parents: 13361
diff changeset
620
4c22eed6e0a6 [gaim-migrate @ 15809]
Richard Laager <rlaager@pidgin.im>
parents: 13361
diff changeset
621 /**
4c22eed6e0a6 [gaim-migrate @ 15809]
Richard Laager <rlaager@pidgin.im>
parents: 13361
diff changeset
622 * Sets the mouse point for a GtkWidget back to that of its parent window.
4c22eed6e0a6 [gaim-migrate @ 15809]
Richard Laager <rlaager@pidgin.im>
parents: 13361
diff changeset
623 *
4c22eed6e0a6 [gaim-migrate @ 15809]
Richard Laager <rlaager@pidgin.im>
parents: 13361
diff changeset
624 * If @a widget is @c NULL, this function simply returns.
4c22eed6e0a6 [gaim-migrate @ 15809]
Richard Laager <rlaager@pidgin.im>
parents: 13361
diff changeset
625 *
13470
5550131ec50b [gaim-migrate @ 15845]
Richard Laager <rlaager@pidgin.im>
parents: 13435
diff changeset
626 * If the window for @a widget is @c NULL, this function simply returns.
13435
4c22eed6e0a6 [gaim-migrate @ 15809]
Richard Laager <rlaager@pidgin.im>
parents: 13361
diff changeset
627 *
4c22eed6e0a6 [gaim-migrate @ 15809]
Richard Laager <rlaager@pidgin.im>
parents: 13361
diff changeset
628 * @note The display is not flushed from this function.
4c22eed6e0a6 [gaim-migrate @ 15809]
Richard Laager <rlaager@pidgin.im>
parents: 13361
diff changeset
629 */
15562
8c8249fe5e3c gaim_gtk to pidgin. I hope
Sean Egan <seanegan@pidgin.im>
parents: 15496
diff changeset
630 void pidgin_clear_cursor(GtkWidget *widget);
13435
4c22eed6e0a6 [gaim-migrate @ 15809]
Richard Laager <rlaager@pidgin.im>
parents: 13361
diff changeset
631
14195
0f7cb3b272b2 [gaim-migrate @ 16775]
Sean Egan <seanegan@pidgin.im>
parents: 13807
diff changeset
632 /**
0f7cb3b272b2 [gaim-migrate @ 16775]
Sean Egan <seanegan@pidgin.im>
parents: 13807
diff changeset
633 * Creates a File Selection widget for choosing a buddy icon
0f7cb3b272b2 [gaim-migrate @ 16775]
Sean Egan <seanegan@pidgin.im>
parents: 13807
diff changeset
634 *
0f7cb3b272b2 [gaim-migrate @ 16775]
Sean Egan <seanegan@pidgin.im>
parents: 13807
diff changeset
635 * @param parent The parent window
0f7cb3b272b2 [gaim-migrate @ 16775]
Sean Egan <seanegan@pidgin.im>
parents: 13807
diff changeset
636 * @param callback The callback to call when the window is closed. If the user chose an icon, the char* argument will point to its path
16262
1d9b65303dfc Doxygen updates. This eliminated all the warnings from Doxygen.
Richard Laager <rlaager@pidgin.im>
parents: 16254
diff changeset
637 * @param data Data to pass to @a callback
25888
d0fdd378a635 Remove trailing whitespace
Mark Doliner <markdoliner@pidgin.im>
parents: 25885
diff changeset
638 * @return The file dialog
14195
0f7cb3b272b2 [gaim-migrate @ 16775]
Sean Egan <seanegan@pidgin.im>
parents: 13807
diff changeset
639 */
15562
8c8249fe5e3c gaim_gtk to pidgin. I hope
Sean Egan <seanegan@pidgin.im>
parents: 15496
diff changeset
640 GtkWidget *pidgin_buddy_icon_chooser_new(GtkWindow *parent, void(*callback)(const char*,gpointer), gpointer data);
14195
0f7cb3b272b2 [gaim-migrate @ 16775]
Sean Egan <seanegan@pidgin.im>
parents: 13807
diff changeset
641
0f7cb3b272b2 [gaim-migrate @ 16775]
Sean Egan <seanegan@pidgin.im>
parents: 13807
diff changeset
642 /**
0f7cb3b272b2 [gaim-migrate @ 16775]
Sean Egan <seanegan@pidgin.im>
parents: 13807
diff changeset
643 * Converts a buddy icon to the required size and format
25888
d0fdd378a635 Remove trailing whitespace
Mark Doliner <markdoliner@pidgin.im>
parents: 25885
diff changeset
644 *
16446
3a6ed6c3400e Fix the custom icon stuff, and various memory leaks. At this point, custom
Richard Laager <rlaager@pidgin.im>
parents: 16262
diff changeset
645 * @param plugin The prpl to convert the icon
3a6ed6c3400e Fix the custom icon stuff, and various memory leaks. At this point, custom
Richard Laager <rlaager@pidgin.im>
parents: 16262
diff changeset
646 * @param path The path of a file to convert
3a6ed6c3400e Fix the custom icon stuff, and various memory leaks. At this point, custom
Richard Laager <rlaager@pidgin.im>
parents: 16262
diff changeset
647 * @param len If not @c NULL, the length of the returned data will be set here.
3a6ed6c3400e Fix the custom icon stuff, and various memory leaks. At this point, custom
Richard Laager <rlaager@pidgin.im>
parents: 16262
diff changeset
648 *
3a6ed6c3400e Fix the custom icon stuff, and various memory leaks. At this point, custom
Richard Laager <rlaager@pidgin.im>
parents: 16262
diff changeset
649 * @return The converted image data, or @c NULL if an error occurred.
14195
0f7cb3b272b2 [gaim-migrate @ 16775]
Sean Egan <seanegan@pidgin.im>
parents: 13807
diff changeset
650 */
16446
3a6ed6c3400e Fix the custom icon stuff, and various memory leaks. At this point, custom
Richard Laager <rlaager@pidgin.im>
parents: 16262
diff changeset
651 gpointer pidgin_convert_buddy_icon(PurplePlugin *plugin, const char *path, size_t *len);
14195
0f7cb3b272b2 [gaim-migrate @ 16775]
Sean Egan <seanegan@pidgin.im>
parents: 13807
diff changeset
652
15084
6cb675dea5fb [gaim-migrate @ 17804]
Sean Egan <seanegan@pidgin.im>
parents: 14914
diff changeset
653 /**
6cb675dea5fb [gaim-migrate @ 17804]
Sean Egan <seanegan@pidgin.im>
parents: 14914
diff changeset
654 * Converts "->" and "<-" in strings to Unicode arrow characters, for use in referencing
6cb675dea5fb [gaim-migrate @ 17804]
Sean Egan <seanegan@pidgin.im>
parents: 14914
diff changeset
655 * menu items.
6cb675dea5fb [gaim-migrate @ 17804]
Sean Egan <seanegan@pidgin.im>
parents: 14914
diff changeset
656 *
6cb675dea5fb [gaim-migrate @ 17804]
Sean Egan <seanegan@pidgin.im>
parents: 14914
diff changeset
657 * @param str The text to convert
6cb675dea5fb [gaim-migrate @ 17804]
Sean Egan <seanegan@pidgin.im>
parents: 14914
diff changeset
658 * @return A newly allocated string with unicode arrow characters
6cb675dea5fb [gaim-migrate @ 17804]
Sean Egan <seanegan@pidgin.im>
parents: 14914
diff changeset
659 */
15562
8c8249fe5e3c gaim_gtk to pidgin. I hope
Sean Egan <seanegan@pidgin.im>
parents: 15496
diff changeset
660 char *pidgin_make_pretty_arrows(const char *str);
15094
7ebf5dd7d969 [gaim-migrate @ 17815]
Sean Egan <seanegan@pidgin.im>
parents: 15084
diff changeset
661
7ebf5dd7d969 [gaim-migrate @ 17815]
Sean Egan <seanegan@pidgin.im>
parents: 15084
diff changeset
662 /**
21323
0ad61638683f Create a PidginMiniDialog widget; make pidgin_make_mini_dialog() in gtkutils.c
Will Thompson <resiak@pidgin.im>
parents: 21310
diff changeset
663 * The type of callbacks passed to pidgin_make_mini_dialog().
0ad61638683f Create a PidginMiniDialog widget; make pidgin_make_mini_dialog() in gtkutils.c
Will Thompson <resiak@pidgin.im>
parents: 21310
diff changeset
664 */
0ad61638683f Create a PidginMiniDialog widget; make pidgin_make_mini_dialog() in gtkutils.c
Will Thompson <resiak@pidgin.im>
parents: 21310
diff changeset
665 typedef void (*PidginUtilMiniDialogCallback)(gpointer user_data, GtkButton *);
0ad61638683f Create a PidginMiniDialog widget; make pidgin_make_mini_dialog() in gtkutils.c
Will Thompson <resiak@pidgin.im>
parents: 21310
diff changeset
666
0ad61638683f Create a PidginMiniDialog widget; make pidgin_make_mini_dialog() in gtkutils.c
Will Thompson <resiak@pidgin.im>
parents: 21310
diff changeset
667 /**
0ad61638683f Create a PidginMiniDialog widget; make pidgin_make_mini_dialog() in gtkutils.c
Will Thompson <resiak@pidgin.im>
parents: 21310
diff changeset
668 * Creates a #PidginMiniDialog, tied to a #PurpleConnection, suitable for
0ad61638683f Create a PidginMiniDialog widget; make pidgin_make_mini_dialog() in gtkutils.c
Will Thompson <resiak@pidgin.im>
parents: 21310
diff changeset
669 * embedding in the buddy list scrollbook with pidgin_blist_add_alert().
15094
7ebf5dd7d969 [gaim-migrate @ 17815]
Sean Egan <seanegan@pidgin.im>
parents: 15084
diff changeset
670 *
21304
ccd8db75dbc2 Improve the documentation of pidgin_make_mini_dialog().
Will Thompson <resiak@pidgin.im>
parents: 20940
diff changeset
671 * @param handle The #PurpleConnection to which this mini-dialog
ccd8db75dbc2 Improve the documentation of pidgin_make_mini_dialog().
Will Thompson <resiak@pidgin.im>
parents: 20940
diff changeset
672 * refers, or @c NULL if it does not refer to a
ccd8db75dbc2 Improve the documentation of pidgin_make_mini_dialog().
Will Thompson <resiak@pidgin.im>
parents: 20940
diff changeset
673 * connection. If @a handle is supplied, the mini-dialog
ccd8db75dbc2 Improve the documentation of pidgin_make_mini_dialog().
Will Thompson <resiak@pidgin.im>
parents: 20940
diff changeset
674 * will be automatically removed and destroyed when the
ccd8db75dbc2 Improve the documentation of pidgin_make_mini_dialog().
Will Thompson <resiak@pidgin.im>
parents: 20940
diff changeset
675 * connection signs off.
ccd8db75dbc2 Improve the documentation of pidgin_make_mini_dialog().
Will Thompson <resiak@pidgin.im>
parents: 20940
diff changeset
676 * @param stock_id The ID of a stock image to use in the mini dialog.
15094
7ebf5dd7d969 [gaim-migrate @ 17815]
Sean Egan <seanegan@pidgin.im>
parents: 15084
diff changeset
677 * @param primary The primary text
21323
0ad61638683f Create a PidginMiniDialog widget; make pidgin_make_mini_dialog() in gtkutils.c
Will Thompson <resiak@pidgin.im>
parents: 21310
diff changeset
678 * @param secondary The secondary text, or @c NULL for no description.
15094
7ebf5dd7d969 [gaim-migrate @ 17815]
Sean Egan <seanegan@pidgin.im>
parents: 15084
diff changeset
679 * @param user_data Data to pass to the callbacks
21304
ccd8db75dbc2 Improve the documentation of pidgin_make_mini_dialog().
Will Thompson <resiak@pidgin.im>
parents: 20940
diff changeset
680 * @param ... a <tt>NULL</tt>-terminated list of button labels
21323
0ad61638683f Create a PidginMiniDialog widget; make pidgin_make_mini_dialog() in gtkutils.c
Will Thompson <resiak@pidgin.im>
parents: 21310
diff changeset
681 * (<tt>char *</tt>) and callbacks
0ad61638683f Create a PidginMiniDialog widget; make pidgin_make_mini_dialog() in gtkutils.c
Will Thompson <resiak@pidgin.im>
parents: 21310
diff changeset
682 * (#PidginUtilMiniDialogCallback). @a user_data will be
0ad61638683f Create a PidginMiniDialog widget; make pidgin_make_mini_dialog() in gtkutils.c
Will Thompson <resiak@pidgin.im>
parents: 21310
diff changeset
683 * passed as the first argument. (Callbacks may lack a
0ad61638683f Create a PidginMiniDialog widget; make pidgin_make_mini_dialog() in gtkutils.c
Will Thompson <resiak@pidgin.im>
parents: 21310
diff changeset
684 * second argument, or be @c NULL to take no action when
0ad61638683f Create a PidginMiniDialog widget; make pidgin_make_mini_dialog() in gtkutils.c
Will Thompson <resiak@pidgin.im>
parents: 21310
diff changeset
685 * the corresponding button is pressed.) When a button is
0ad61638683f Create a PidginMiniDialog widget; make pidgin_make_mini_dialog() in gtkutils.c
Will Thompson <resiak@pidgin.im>
parents: 21310
diff changeset
686 * pressed, the callback (if any) will be called; when
0ad61638683f Create a PidginMiniDialog widget; make pidgin_make_mini_dialog() in gtkutils.c
Will Thompson <resiak@pidgin.im>
parents: 21310
diff changeset
687 * the callback returns the dialog will be destroyed.
0ad61638683f Create a PidginMiniDialog widget; make pidgin_make_mini_dialog() in gtkutils.c
Will Thompson <resiak@pidgin.im>
parents: 21310
diff changeset
688 * @return A #PidginMiniDialog, suitable for passing to
21304
ccd8db75dbc2 Improve the documentation of pidgin_make_mini_dialog().
Will Thompson <resiak@pidgin.im>
parents: 20940
diff changeset
689 * pidgin_blist_add_alert().
ccd8db75dbc2 Improve the documentation of pidgin_make_mini_dialog().
Will Thompson <resiak@pidgin.im>
parents: 20940
diff changeset
690 * @see pidginstock.h
15094
7ebf5dd7d969 [gaim-migrate @ 17815]
Sean Egan <seanegan@pidgin.im>
parents: 15084
diff changeset
691 */
21310
de88118624f0 Fix the return type of pidgin_make_mini_dialog() to be GtkWidget * rather than
Will Thompson <resiak@pidgin.im>
parents: 21306
diff changeset
692 GtkWidget *pidgin_make_mini_dialog(PurpleConnection *handle,
de88118624f0 Fix the return type of pidgin_make_mini_dialog() to be GtkWidget * rather than
Will Thompson <resiak@pidgin.im>
parents: 21306
diff changeset
693 const char* stock_id, const char *primary, const char *secondary,
22897
93d7ad160755 Add a utility function to create a pixbuf from a stored image.
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 22306
diff changeset
694 void *user_data, ...) G_GNUC_NULL_TERMINATED;
15177
8b6c66e09388 [gaim-migrate @ 17901]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 15094
diff changeset
695
8b6c66e09388 [gaim-migrate @ 17901]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 15094
diff changeset
696 /**
30635
e9893ecc9057 Display the protocol icon for the authorization request dialog
Ivan Komarov <ivan.komarov@pidgin.im>
parents: 29896
diff changeset
697 * Does exactly what pidgin_make_mini_dialog() does, except you can specify
e9893ecc9057 Display the protocol icon for the authorization request dialog
Ivan Komarov <ivan.komarov@pidgin.im>
parents: 29896
diff changeset
698 * a custom icon for the dialog.
e9893ecc9057 Display the protocol icon for the authorization request dialog
Ivan Komarov <ivan.komarov@pidgin.im>
parents: 29896
diff changeset
699 */
e9893ecc9057 Display the protocol icon for the authorization request dialog
Ivan Komarov <ivan.komarov@pidgin.im>
parents: 29896
diff changeset
700 GtkWidget *pidgin_make_mini_dialog_with_custom_icon(PurpleConnection *gc,
e9893ecc9057 Display the protocol icon for the authorization request dialog
Ivan Komarov <ivan.komarov@pidgin.im>
parents: 29896
diff changeset
701 GdkPixbuf *custom_icon,
e9893ecc9057 Display the protocol icon for the authorization request dialog
Ivan Komarov <ivan.komarov@pidgin.im>
parents: 29896
diff changeset
702 const char *primary,
e9893ecc9057 Display the protocol icon for the authorization request dialog
Ivan Komarov <ivan.komarov@pidgin.im>
parents: 29896
diff changeset
703 const char *secondary,
e9893ecc9057 Display the protocol icon for the authorization request dialog
Ivan Komarov <ivan.komarov@pidgin.im>
parents: 29896
diff changeset
704 void *user_data,
e9893ecc9057 Display the protocol icon for the authorization request dialog
Ivan Komarov <ivan.komarov@pidgin.im>
parents: 29896
diff changeset
705 ...) G_GNUC_NULL_TERMINATED;
e9893ecc9057 Display the protocol icon for the authorization request dialog
Ivan Komarov <ivan.komarov@pidgin.im>
parents: 29896
diff changeset
706
e9893ecc9057 Display the protocol icon for the authorization request dialog
Ivan Komarov <ivan.komarov@pidgin.im>
parents: 29896
diff changeset
707 /**
15177
8b6c66e09388 [gaim-migrate @ 17901]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 15094
diff changeset
708 * This is a callback function to be used for Ctrl+F searching in treeviews.
8b6c66e09388 [gaim-migrate @ 17901]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 15094
diff changeset
709 * Sample Use:
8b6c66e09388 [gaim-migrate @ 17901]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 15094
diff changeset
710 * gtk_tree_view_set_search_equal_func(treeview,
15562
8c8249fe5e3c gaim_gtk to pidgin. I hope
Sean Egan <seanegan@pidgin.im>
parents: 15496
diff changeset
711 * pidgin_tree_view_search_equal_func,
15177
8b6c66e09388 [gaim-migrate @ 17901]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 15094
diff changeset
712 * search_data, search_data_destroy_cb);
8b6c66e09388 [gaim-migrate @ 17901]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 15094
diff changeset
713 *
8b6c66e09388 [gaim-migrate @ 17901]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 15094
diff changeset
714 */
15562
8c8249fe5e3c gaim_gtk to pidgin. I hope
Sean Egan <seanegan@pidgin.im>
parents: 15496
diff changeset
715 gboolean pidgin_tree_view_search_equal_func(GtkTreeModel *model, gint column,
15177
8b6c66e09388 [gaim-migrate @ 17901]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 15094
diff changeset
716 const gchar *key, GtkTreeIter *iter, gpointer data);
8b6c66e09388 [gaim-migrate @ 17901]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 15094
diff changeset
717
15403
116f7fcb07a8 [gaim-migrate @ 18134]
Sean Egan <seanegan@pidgin.im>
parents: 15320
diff changeset
718 /**
25888
d0fdd378a635 Remove trailing whitespace
Mark Doliner <markdoliner@pidgin.im>
parents: 25885
diff changeset
719 * Sets or resets a window to 'urgent,' by setting the URGENT hint in X
15403
116f7fcb07a8 [gaim-migrate @ 18134]
Sean Egan <seanegan@pidgin.im>
parents: 15320
diff changeset
720 * or blinking in the win32 taskbar
116f7fcb07a8 [gaim-migrate @ 18134]
Sean Egan <seanegan@pidgin.im>
parents: 15320
diff changeset
721 *
116f7fcb07a8 [gaim-migrate @ 18134]
Sean Egan <seanegan@pidgin.im>
parents: 15320
diff changeset
722 * @param window The window to draw attention to
116f7fcb07a8 [gaim-migrate @ 18134]
Sean Egan <seanegan@pidgin.im>
parents: 15320
diff changeset
723 * @param urgent Whether to set the urgent hint or not
116f7fcb07a8 [gaim-migrate @ 18134]
Sean Egan <seanegan@pidgin.im>
parents: 15320
diff changeset
724 */
15562
8c8249fe5e3c gaim_gtk to pidgin. I hope
Sean Egan <seanegan@pidgin.im>
parents: 15496
diff changeset
725 void pidgin_set_urgent(GtkWindow *window, gboolean urgent);
15403
116f7fcb07a8 [gaim-migrate @ 18134]
Sean Egan <seanegan@pidgin.im>
parents: 15320
diff changeset
726
15474
673a21839b11 More statusbox tweaks:
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
727 /**
673a21839b11 More statusbox tweaks:
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
728 * Returns TRUE if the GdkPixbuf is opaque, as determined by no
673a21839b11 More statusbox tweaks:
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
729 * alpha at any of the edge pixels.
673a21839b11 More statusbox tweaks:
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
730 *
673a21839b11 More statusbox tweaks:
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
731 * @param pixbuf The pixbug
673a21839b11 More statusbox tweaks:
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
732 * @return TRUE if the pixbuf is opaque around the edges, FALSE otherwise
673a21839b11 More statusbox tweaks:
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
733 */
15568
cd19bb5a51b8 gtkutils changes
Sean Egan <seanegan@pidgin.im>
parents: 15562
diff changeset
734 gboolean pidgin_gdk_pixbuf_is_opaque(GdkPixbuf *pixbuf);
15474
673a21839b11 More statusbox tweaks:
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
735
18275
b9633ef422b0 Rounds icons in the infopane. Since gdk_pixbuf_animation_get_static_image seems to return pixbufs without alpha channels, this only rounds animated icons that aren't transparent.
Sean Egan <seanegan@pidgin.im>
parents: 18238
diff changeset
736 /**
b9633ef422b0 Rounds icons in the infopane. Since gdk_pixbuf_animation_get_static_image seems to return pixbufs without alpha channels, this only rounds animated icons that aren't transparent.
Sean Egan <seanegan@pidgin.im>
parents: 18238
diff changeset
737 * Rounds the corners of a 32x32 GdkPixbuf in place
b9633ef422b0 Rounds icons in the infopane. Since gdk_pixbuf_animation_get_static_image seems to return pixbufs without alpha channels, this only rounds animated icons that aren't transparent.
Sean Egan <seanegan@pidgin.im>
parents: 18238
diff changeset
738 *
b9633ef422b0 Rounds icons in the infopane. Since gdk_pixbuf_animation_get_static_image seems to return pixbufs without alpha channels, this only rounds animated icons that aren't transparent.
Sean Egan <seanegan@pidgin.im>
parents: 18238
diff changeset
739 * @param pixbuf The buddy icon to transform
b9633ef422b0 Rounds icons in the infopane. Since gdk_pixbuf_animation_get_static_image seems to return pixbufs without alpha channels, this only rounds animated icons that aren't transparent.
Sean Egan <seanegan@pidgin.im>
parents: 18238
diff changeset
740 */
b9633ef422b0 Rounds icons in the infopane. Since gdk_pixbuf_animation_get_static_image seems to return pixbufs without alpha channels, this only rounds animated icons that aren't transparent.
Sean Egan <seanegan@pidgin.im>
parents: 18238
diff changeset
741 void pidgin_gdk_pixbuf_make_round(GdkPixbuf *pixbuf);
b9633ef422b0 Rounds icons in the infopane. Since gdk_pixbuf_animation_get_static_image seems to return pixbufs without alpha channels, this only rounds animated icons that aren't transparent.
Sean Egan <seanegan@pidgin.im>
parents: 18238
diff changeset
742
18278
06bf54cee797 Chat topics in status line of chat infopanes
Sean Egan <seanegan@pidgin.im>
parents: 18275
diff changeset
743 /**
06bf54cee797 Chat topics in status line of chat infopanes
Sean Egan <seanegan@pidgin.im>
parents: 18275
diff changeset
744 * Returns an HTML-style color string for use as a dim grey
06bf54cee797 Chat topics in status line of chat infopanes
Sean Egan <seanegan@pidgin.im>
parents: 18275
diff changeset
745 * string
06bf54cee797 Chat topics in status line of chat infopanes
Sean Egan <seanegan@pidgin.im>
parents: 18275
diff changeset
746 *
06bf54cee797 Chat topics in status line of chat infopanes
Sean Egan <seanegan@pidgin.im>
parents: 18275
diff changeset
747 * @param widget The widget to return dim grey for
06bf54cee797 Chat topics in status line of chat infopanes
Sean Egan <seanegan@pidgin.im>
parents: 18275
diff changeset
748 * @return The dim grey string
06bf54cee797 Chat topics in status line of chat infopanes
Sean Egan <seanegan@pidgin.im>
parents: 18275
diff changeset
749 */
06bf54cee797 Chat topics in status line of chat infopanes
Sean Egan <seanegan@pidgin.im>
parents: 18275
diff changeset
750 const char *pidgin_get_dim_grey_string(GtkWidget *widget);
06bf54cee797 Chat topics in status line of chat infopanes
Sean Egan <seanegan@pidgin.im>
parents: 18275
diff changeset
751
20036
3bdbea94ad0c Part of #1332 to introduce pidgin_text_combo_box_new_entry and
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 19862
diff changeset
752 /**
3bdbea94ad0c Part of #1332 to introduce pidgin_text_combo_box_new_entry and
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 19862
diff changeset
753 * Create a simple text GtkComboBoxEntry equivalent
3bdbea94ad0c Part of #1332 to introduce pidgin_text_combo_box_new_entry and
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 19862
diff changeset
754 *
3bdbea94ad0c Part of #1332 to introduce pidgin_text_combo_box_new_entry and
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 19862
diff changeset
755 * @param default_item Initial contents of GtkEntry
3bdbea94ad0c Part of #1332 to introduce pidgin_text_combo_box_new_entry and
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 19862
diff changeset
756 * @param items GList containing strings to add to GtkComboBox
3bdbea94ad0c Part of #1332 to introduce pidgin_text_combo_box_new_entry and
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 19862
diff changeset
757 *
3bdbea94ad0c Part of #1332 to introduce pidgin_text_combo_box_new_entry and
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 19862
diff changeset
758 * @return A newly created text GtkComboBox containing a GtkEntry
3bdbea94ad0c Part of #1332 to introduce pidgin_text_combo_box_new_entry and
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 19862
diff changeset
759 * child.
20940
925d3d68b3af Doxygen @since tags for libpurple and pidgin.
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 20147
diff changeset
760 *
925d3d68b3af Doxygen @since tags for libpurple and pidgin.
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 20147
diff changeset
761 * @since 2.2.0
20036
3bdbea94ad0c Part of #1332 to introduce pidgin_text_combo_box_new_entry and
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 19862
diff changeset
762 */
3bdbea94ad0c Part of #1332 to introduce pidgin_text_combo_box_new_entry and
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 19862
diff changeset
763 GtkWidget *pidgin_text_combo_box_entry_new(const char *default_item, GList *items);
3bdbea94ad0c Part of #1332 to introduce pidgin_text_combo_box_new_entry and
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 19862
diff changeset
764
3bdbea94ad0c Part of #1332 to introduce pidgin_text_combo_box_new_entry and
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 19862
diff changeset
765 /**
3bdbea94ad0c Part of #1332 to introduce pidgin_text_combo_box_new_entry and
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 19862
diff changeset
766 * Retrieve the text from the entry of the simple text GtkComboBoxEntry equivalent
3bdbea94ad0c Part of #1332 to introduce pidgin_text_combo_box_new_entry and
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 19862
diff changeset
767 *
3bdbea94ad0c Part of #1332 to introduce pidgin_text_combo_box_new_entry and
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 19862
diff changeset
768 * @param widget The simple text GtkComboBoxEntry equivalent widget
3bdbea94ad0c Part of #1332 to introduce pidgin_text_combo_box_new_entry and
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 19862
diff changeset
769 *
3bdbea94ad0c Part of #1332 to introduce pidgin_text_combo_box_new_entry and
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 19862
diff changeset
770 * @return The text in the widget's entry. It must not be freed
20940
925d3d68b3af Doxygen @since tags for libpurple and pidgin.
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 20147
diff changeset
771 *
925d3d68b3af Doxygen @since tags for libpurple and pidgin.
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 20147
diff changeset
772 * @since 2.2.0
20036
3bdbea94ad0c Part of #1332 to introduce pidgin_text_combo_box_new_entry and
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 19862
diff changeset
773 */
3bdbea94ad0c Part of #1332 to introduce pidgin_text_combo_box_new_entry and
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 19862
diff changeset
774 const char *pidgin_text_combo_box_entry_get_text(GtkWidget *widget);
3bdbea94ad0c Part of #1332 to introduce pidgin_text_combo_box_new_entry and
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 19862
diff changeset
775
3bdbea94ad0c Part of #1332 to introduce pidgin_text_combo_box_new_entry and
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 19862
diff changeset
776 /**
3bdbea94ad0c Part of #1332 to introduce pidgin_text_combo_box_new_entry and
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 19862
diff changeset
777 * Set the text in the entry of the simple text GtkComboBoxEntry equivalent
3bdbea94ad0c Part of #1332 to introduce pidgin_text_combo_box_new_entry and
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 19862
diff changeset
778 *
3bdbea94ad0c Part of #1332 to introduce pidgin_text_combo_box_new_entry and
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 19862
diff changeset
779 * @param widget The simple text GtkComboBoxEntry equivalent widget
3bdbea94ad0c Part of #1332 to introduce pidgin_text_combo_box_new_entry and
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 19862
diff changeset
780 * @param text The text to set
20940
925d3d68b3af Doxygen @since tags for libpurple and pidgin.
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 20147
diff changeset
781 *
925d3d68b3af Doxygen @since tags for libpurple and pidgin.
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 20147
diff changeset
782 * @since 2.2.0
20036
3bdbea94ad0c Part of #1332 to introduce pidgin_text_combo_box_new_entry and
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 19862
diff changeset
783 */
3bdbea94ad0c Part of #1332 to introduce pidgin_text_combo_box_new_entry and
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 19862
diff changeset
784 void pidgin_text_combo_box_entry_set_text(GtkWidget *widget, const char *text);
3bdbea94ad0c Part of #1332 to introduce pidgin_text_combo_box_new_entry and
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 19862
diff changeset
785
22007
386062b58867 Try to make a window transient for a suitable parent window. This currently
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 22005
diff changeset
786 /**
386062b58867 Try to make a window transient for a suitable parent window. This currently
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 22005
diff changeset
787 * Automatically make a window transient to a suitable parent window.
386062b58867 Try to make a window transient for a suitable parent window. This currently
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 22005
diff changeset
788 *
386062b58867 Try to make a window transient for a suitable parent window. This currently
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 22005
diff changeset
789 * @param window The window to make transient.
386062b58867 Try to make a window transient for a suitable parent window. This currently
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 22005
diff changeset
790 *
25885
5b5e2ca316b2 Add @since 2.6.0 doxygen comments to some of our new functions, and
Mark Doliner <markdoliner@pidgin.im>
parents: 24674
diff changeset
791 * @return Whether the window was made transient or not.
5b5e2ca316b2 Add @since 2.6.0 doxygen comments to some of our new functions, and
Mark Doliner <markdoliner@pidgin.im>
parents: 24674
diff changeset
792 *
22007
386062b58867 Try to make a window transient for a suitable parent window. This currently
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 22005
diff changeset
793 * @since 2.4.0
386062b58867 Try to make a window transient for a suitable parent window. This currently
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 22005
diff changeset
794 */
386062b58867 Try to make a window transient for a suitable parent window. This currently
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 22005
diff changeset
795 gboolean pidgin_auto_parent_window(GtkWidget *window);
386062b58867 Try to make a window transient for a suitable parent window. This currently
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 22005
diff changeset
796
22131
12b395dc8c59 Remove a lot of duplication from a lot of places. Closes #4558.
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 22102
diff changeset
797 /**
12b395dc8c59 Remove a lot of duplication from a lot of places. Closes #4558.
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 22102
diff changeset
798 * Add a labelled widget to a GtkVBox
12b395dc8c59 Remove a lot of duplication from a lot of places. Closes #4558.
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 22102
diff changeset
799 *
12b395dc8c59 Remove a lot of duplication from a lot of places. Closes #4558.
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 22102
diff changeset
800 * @param vbox The GtkVBox to add the widget to.
22306
1292d6614272 Some minor doc update.
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 22131
diff changeset
801 * @param widget_label The label to give the widget, can be @c NULL.
1292d6614272 Some minor doc update.
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 22131
diff changeset
802 * @param sg The GtkSizeGroup to add the label to, can be @c NULL.
1292d6614272 Some minor doc update.
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 22131
diff changeset
803 * @param widget The GtkWidget to add.
22131
12b395dc8c59 Remove a lot of duplication from a lot of places. Closes #4558.
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 22102
diff changeset
804 * @param expand Whether to expand the widget horizontally.
22306
1292d6614272 Some minor doc update.
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 22131
diff changeset
805 * @param p_label Place to store a pointer to the GtkLabel, or @c NULL if you don't care.
22131
12b395dc8c59 Remove a lot of duplication from a lot of places. Closes #4558.
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 22102
diff changeset
806 *
12b395dc8c59 Remove a lot of duplication from a lot of places. Closes #4558.
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 22102
diff changeset
807 * @return A GtkHBox already added to the GtkVBox containing the GtkLabel and the GtkWidget.
12b395dc8c59 Remove a lot of duplication from a lot of places. Closes #4558.
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 22102
diff changeset
808 * @since 2.4.0
12b395dc8c59 Remove a lot of duplication from a lot of places. Closes #4558.
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 22102
diff changeset
809 */
12b395dc8c59 Remove a lot of duplication from a lot of places. Closes #4558.
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 22102
diff changeset
810 GtkWidget *pidgin_add_widget_to_vbox(GtkBox *vbox, const char *widget_label, GtkSizeGroup *sg, GtkWidget *widget, gboolean expand, GtkWidget **p_label);
12b395dc8c59 Remove a lot of duplication from a lot of places. Closes #4558.
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 22102
diff changeset
811
22897
93d7ad160755 Add a utility function to create a pixbuf from a stored image.
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 22306
diff changeset
812 /**
31889
96183796df0c Start looking at the GError parameter every time we call these functions:
Mark Doliner <markdoliner@pidgin.im>
parents: 31584
diff changeset
813 * Create a GdkPixbuf from a chunk of image data.
96183796df0c Start looking at the GError parameter every time we call these functions:
Mark Doliner <markdoliner@pidgin.im>
parents: 31584
diff changeset
814 *
96183796df0c Start looking at the GError parameter every time we call these functions:
Mark Doliner <markdoliner@pidgin.im>
parents: 31584
diff changeset
815 * @param buf The raw binary image data.
96183796df0c Start looking at the GError parameter every time we call these functions:
Mark Doliner <markdoliner@pidgin.im>
parents: 31584
diff changeset
816 * @param count The length of buf in bytes.
96183796df0c Start looking at the GError parameter every time we call these functions:
Mark Doliner <markdoliner@pidgin.im>
parents: 31584
diff changeset
817 *
96183796df0c Start looking at the GError parameter every time we call these functions:
Mark Doliner <markdoliner@pidgin.im>
parents: 31584
diff changeset
818 * @return A GdkPixbuf created from the image data, or NULL if
96183796df0c Start looking at the GError parameter every time we call these functions:
Mark Doliner <markdoliner@pidgin.im>
parents: 31584
diff changeset
819 * there was an error parsing the data.
96183796df0c Start looking at the GError parameter every time we call these functions:
Mark Doliner <markdoliner@pidgin.im>
parents: 31584
diff changeset
820 *
96183796df0c Start looking at the GError parameter every time we call these functions:
Mark Doliner <markdoliner@pidgin.im>
parents: 31584
diff changeset
821 * @since 2.9.0
96183796df0c Start looking at the GError parameter every time we call these functions:
Mark Doliner <markdoliner@pidgin.im>
parents: 31584
diff changeset
822 */
96183796df0c Start looking at the GError parameter every time we call these functions:
Mark Doliner <markdoliner@pidgin.im>
parents: 31584
diff changeset
823 GdkPixbuf *pidgin_pixbuf_from_data(const guchar *buf, gsize count);
96183796df0c Start looking at the GError parameter every time we call these functions:
Mark Doliner <markdoliner@pidgin.im>
parents: 31584
diff changeset
824
96183796df0c Start looking at the GError parameter every time we call these functions:
Mark Doliner <markdoliner@pidgin.im>
parents: 31584
diff changeset
825 /**
96183796df0c Start looking at the GError parameter every time we call these functions:
Mark Doliner <markdoliner@pidgin.im>
parents: 31584
diff changeset
826 * Create a GdkPixbufAnimation from a chunk of image data.
96183796df0c Start looking at the GError parameter every time we call these functions:
Mark Doliner <markdoliner@pidgin.im>
parents: 31584
diff changeset
827 *
96183796df0c Start looking at the GError parameter every time we call these functions:
Mark Doliner <markdoliner@pidgin.im>
parents: 31584
diff changeset
828 * @param buf The raw binary image data.
96183796df0c Start looking at the GError parameter every time we call these functions:
Mark Doliner <markdoliner@pidgin.im>
parents: 31584
diff changeset
829 * @param count The length of buf in bytes.
96183796df0c Start looking at the GError parameter every time we call these functions:
Mark Doliner <markdoliner@pidgin.im>
parents: 31584
diff changeset
830 *
96183796df0c Start looking at the GError parameter every time we call these functions:
Mark Doliner <markdoliner@pidgin.im>
parents: 31584
diff changeset
831 * @return A GdkPixbufAnimation created from the image data, or NULL if
96183796df0c Start looking at the GError parameter every time we call these functions:
Mark Doliner <markdoliner@pidgin.im>
parents: 31584
diff changeset
832 * there was an error parsing the data.
96183796df0c Start looking at the GError parameter every time we call these functions:
Mark Doliner <markdoliner@pidgin.im>
parents: 31584
diff changeset
833 *
96183796df0c Start looking at the GError parameter every time we call these functions:
Mark Doliner <markdoliner@pidgin.im>
parents: 31584
diff changeset
834 * @since 2.9.0
96183796df0c Start looking at the GError parameter every time we call these functions:
Mark Doliner <markdoliner@pidgin.im>
parents: 31584
diff changeset
835 */
96183796df0c Start looking at the GError parameter every time we call these functions:
Mark Doliner <markdoliner@pidgin.im>
parents: 31584
diff changeset
836 GdkPixbufAnimation *pidgin_pixbuf_anim_from_data(const guchar *buf, gsize count);
96183796df0c Start looking at the GError parameter every time we call these functions:
Mark Doliner <markdoliner@pidgin.im>
parents: 31584
diff changeset
837
96183796df0c Start looking at the GError parameter every time we call these functions:
Mark Doliner <markdoliner@pidgin.im>
parents: 31584
diff changeset
838 /**
22897
93d7ad160755 Add a utility function to create a pixbuf from a stored image.
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 22306
diff changeset
839 * Create a GdkPixbuf from a PurpleStoredImage.
93d7ad160755 Add a utility function to create a pixbuf from a stored image.
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 22306
diff changeset
840 *
93d7ad160755 Add a utility function to create a pixbuf from a stored image.
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 22306
diff changeset
841 * @param image A PurpleStoredImage.
93d7ad160755 Add a utility function to create a pixbuf from a stored image.
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 22306
diff changeset
842 *
93d7ad160755 Add a utility function to create a pixbuf from a stored image.
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 22306
diff changeset
843 * @return A GdkPixbuf created from the stored image.
25885
5b5e2ca316b2 Add @since 2.6.0 doxygen comments to some of our new functions, and
Mark Doliner <markdoliner@pidgin.im>
parents: 24674
diff changeset
844 *
22897
93d7ad160755 Add a utility function to create a pixbuf from a stored image.
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 22306
diff changeset
845 * @since 2.5.0
93d7ad160755 Add a utility function to create a pixbuf from a stored image.
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 22306
diff changeset
846 */
25885
5b5e2ca316b2 Add @since 2.6.0 doxygen comments to some of our new functions, and
Mark Doliner <markdoliner@pidgin.im>
parents: 24674
diff changeset
847 GdkPixbuf *pidgin_pixbuf_from_imgstore(PurpleStoredImage *image);
22897
93d7ad160755 Add a utility function to create a pixbuf from a stored image.
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 22306
diff changeset
848
24674
36bf974a7d78 Allow plugins to specify custom link types to the GtkIMHtml widget.
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 24569
diff changeset
849 /**
31889
96183796df0c Start looking at the GError parameter every time we call these functions:
Mark Doliner <markdoliner@pidgin.im>
parents: 31584
diff changeset
850 * Helper function that calls gdk_pixbuf_new_from_file() and checks both
96183796df0c Start looking at the GError parameter every time we call these functions:
Mark Doliner <markdoliner@pidgin.im>
parents: 31584
diff changeset
851 * the return code and the GError and returns NULL if either one failed.
96183796df0c Start looking at the GError parameter every time we call these functions:
Mark Doliner <markdoliner@pidgin.im>
parents: 31584
diff changeset
852 *
96183796df0c Start looking at the GError parameter every time we call these functions:
Mark Doliner <markdoliner@pidgin.im>
parents: 31584
diff changeset
853 * The gdk-pixbuf documentation implies that it is sufficient to check
96183796df0c Start looking at the GError parameter every time we call these functions:
Mark Doliner <markdoliner@pidgin.im>
parents: 31584
diff changeset
854 * the return value of gdk_pixbuf_new_from_file() to determine
96183796df0c Start looking at the GError parameter every time we call these functions:
Mark Doliner <markdoliner@pidgin.im>
parents: 31584
diff changeset
855 * whether the image was able to be loaded. However, this is not the case
96183796df0c Start looking at the GError parameter every time we call these functions:
Mark Doliner <markdoliner@pidgin.im>
parents: 31584
diff changeset
856 * with gdk-pixbuf 2.23.3 and probably many earlier versions. In some
96183796df0c Start looking at the GError parameter every time we call these functions:
Mark Doliner <markdoliner@pidgin.im>
parents: 31584
diff changeset
857 * cases a GdkPixbuf object is returned that will cause some operations
96183796df0c Start looking at the GError parameter every time we call these functions:
Mark Doliner <markdoliner@pidgin.im>
parents: 31584
diff changeset
858 * (like gdk_pixbuf_scale_simple()) to rapidly consume memory in an
96183796df0c Start looking at the GError parameter every time we call these functions:
Mark Doliner <markdoliner@pidgin.im>
parents: 31584
diff changeset
859 * infinite loop.
96183796df0c Start looking at the GError parameter every time we call these functions:
Mark Doliner <markdoliner@pidgin.im>
parents: 31584
diff changeset
860 *
96183796df0c Start looking at the GError parameter every time we call these functions:
Mark Doliner <markdoliner@pidgin.im>
parents: 31584
diff changeset
861 * This function shouldn't be necessary once Pidgin requires a version of
96183796df0c Start looking at the GError parameter every time we call these functions:
Mark Doliner <markdoliner@pidgin.im>
parents: 31584
diff changeset
862 * gdk-pixbuf where the aforementioned bug is fixed. However, it might be
96183796df0c Start looking at the GError parameter every time we call these functions:
Mark Doliner <markdoliner@pidgin.im>
parents: 31584
diff changeset
863 * nice to keep this function around for the debug message that it logs.
96183796df0c Start looking at the GError parameter every time we call these functions:
Mark Doliner <markdoliner@pidgin.im>
parents: 31584
diff changeset
864 *
96183796df0c Start looking at the GError parameter every time we call these functions:
Mark Doliner <markdoliner@pidgin.im>
parents: 31584
diff changeset
865 * @param filename Name of file to load, in the GLib file name encoding
96183796df0c Start looking at the GError parameter every time we call these functions:
Mark Doliner <markdoliner@pidgin.im>
parents: 31584
diff changeset
866 *
96183796df0c Start looking at the GError parameter every time we call these functions:
Mark Doliner <markdoliner@pidgin.im>
parents: 31584
diff changeset
867 * @return The GdkPixbuf if successful. Otherwise NULL is returned and
96183796df0c Start looking at the GError parameter every time we call these functions:
Mark Doliner <markdoliner@pidgin.im>
parents: 31584
diff changeset
868 * a warning is logged.
96183796df0c Start looking at the GError parameter every time we call these functions:
Mark Doliner <markdoliner@pidgin.im>
parents: 31584
diff changeset
869 *
96183796df0c Start looking at the GError parameter every time we call these functions:
Mark Doliner <markdoliner@pidgin.im>
parents: 31584
diff changeset
870 * @since 2.9.0
96183796df0c Start looking at the GError parameter every time we call these functions:
Mark Doliner <markdoliner@pidgin.im>
parents: 31584
diff changeset
871 */
96183796df0c Start looking at the GError parameter every time we call these functions:
Mark Doliner <markdoliner@pidgin.im>
parents: 31584
diff changeset
872 GdkPixbuf *pidgin_pixbuf_new_from_file(const char *filename);
96183796df0c Start looking at the GError parameter every time we call these functions:
Mark Doliner <markdoliner@pidgin.im>
parents: 31584
diff changeset
873
96183796df0c Start looking at the GError parameter every time we call these functions:
Mark Doliner <markdoliner@pidgin.im>
parents: 31584
diff changeset
874 /**
96183796df0c Start looking at the GError parameter every time we call these functions:
Mark Doliner <markdoliner@pidgin.im>
parents: 31584
diff changeset
875 * Helper function that calls gdk_pixbuf_new_from_file_at_size() and checks
96183796df0c Start looking at the GError parameter every time we call these functions:
Mark Doliner <markdoliner@pidgin.im>
parents: 31584
diff changeset
876 * both the return code and the GError and returns NULL if either one failed.
96183796df0c Start looking at the GError parameter every time we call these functions:
Mark Doliner <markdoliner@pidgin.im>
parents: 31584
diff changeset
877 *
96183796df0c Start looking at the GError parameter every time we call these functions:
Mark Doliner <markdoliner@pidgin.im>
parents: 31584
diff changeset
878 * The gdk-pixbuf documentation implies that it is sufficient to check
96183796df0c Start looking at the GError parameter every time we call these functions:
Mark Doliner <markdoliner@pidgin.im>
parents: 31584
diff changeset
879 * the return value of gdk_pixbuf_new_from_file_at_size() to determine
96183796df0c Start looking at the GError parameter every time we call these functions:
Mark Doliner <markdoliner@pidgin.im>
parents: 31584
diff changeset
880 * whether the image was able to be loaded. However, this is not the case
96183796df0c Start looking at the GError parameter every time we call these functions:
Mark Doliner <markdoliner@pidgin.im>
parents: 31584
diff changeset
881 * with gdk-pixbuf 2.23.3 and probably many earlier versions. In some
96183796df0c Start looking at the GError parameter every time we call these functions:
Mark Doliner <markdoliner@pidgin.im>
parents: 31584
diff changeset
882 * cases a GdkPixbuf object is returned that will cause some operations
96183796df0c Start looking at the GError parameter every time we call these functions:
Mark Doliner <markdoliner@pidgin.im>
parents: 31584
diff changeset
883 * (like gdk_pixbuf_scale_simple()) to rapidly consume memory in an
96183796df0c Start looking at the GError parameter every time we call these functions:
Mark Doliner <markdoliner@pidgin.im>
parents: 31584
diff changeset
884 * infinite loop.
96183796df0c Start looking at the GError parameter every time we call these functions:
Mark Doliner <markdoliner@pidgin.im>
parents: 31584
diff changeset
885 *
96183796df0c Start looking at the GError parameter every time we call these functions:
Mark Doliner <markdoliner@pidgin.im>
parents: 31584
diff changeset
886 * This function shouldn't be necessary once Pidgin requires a version of
96183796df0c Start looking at the GError parameter every time we call these functions:
Mark Doliner <markdoliner@pidgin.im>
parents: 31584
diff changeset
887 * gdk-pixbuf where the aforementioned bug is fixed. However, it might be
96183796df0c Start looking at the GError parameter every time we call these functions:
Mark Doliner <markdoliner@pidgin.im>
parents: 31584
diff changeset
888 * nice to keep this function around for the debug message that it logs.
96183796df0c Start looking at the GError parameter every time we call these functions:
Mark Doliner <markdoliner@pidgin.im>
parents: 31584
diff changeset
889 *
96183796df0c Start looking at the GError parameter every time we call these functions:
Mark Doliner <markdoliner@pidgin.im>
parents: 31584
diff changeset
890 * @param filename Name of file to load, in the GLib file name encoding
96183796df0c Start looking at the GError parameter every time we call these functions:
Mark Doliner <markdoliner@pidgin.im>
parents: 31584
diff changeset
891 * @param width The width the image should have or -1 to not constrain the width
96183796df0c Start looking at the GError parameter every time we call these functions:
Mark Doliner <markdoliner@pidgin.im>
parents: 31584
diff changeset
892 * @param height The height the image should have or -1 to not constrain the height
96183796df0c Start looking at the GError parameter every time we call these functions:
Mark Doliner <markdoliner@pidgin.im>
parents: 31584
diff changeset
893 *
96183796df0c Start looking at the GError parameter every time we call these functions:
Mark Doliner <markdoliner@pidgin.im>
parents: 31584
diff changeset
894 * @return The GdkPixbuf if successful. Otherwise NULL is returned and
96183796df0c Start looking at the GError parameter every time we call these functions:
Mark Doliner <markdoliner@pidgin.im>
parents: 31584
diff changeset
895 * a warning is logged.
96183796df0c Start looking at the GError parameter every time we call these functions:
Mark Doliner <markdoliner@pidgin.im>
parents: 31584
diff changeset
896 *
96183796df0c Start looking at the GError parameter every time we call these functions:
Mark Doliner <markdoliner@pidgin.im>
parents: 31584
diff changeset
897 * @since 2.9.0
96183796df0c Start looking at the GError parameter every time we call these functions:
Mark Doliner <markdoliner@pidgin.im>
parents: 31584
diff changeset
898 */
96183796df0c Start looking at the GError parameter every time we call these functions:
Mark Doliner <markdoliner@pidgin.im>
parents: 31584
diff changeset
899 GdkPixbuf *pidgin_pixbuf_new_from_file_at_size(const char *filename, int width, int height);
96183796df0c Start looking at the GError parameter every time we call these functions:
Mark Doliner <markdoliner@pidgin.im>
parents: 31584
diff changeset
900
96183796df0c Start looking at the GError parameter every time we call these functions:
Mark Doliner <markdoliner@pidgin.im>
parents: 31584
diff changeset
901 /**
96183796df0c Start looking at the GError parameter every time we call these functions:
Mark Doliner <markdoliner@pidgin.im>
parents: 31584
diff changeset
902 * Helper function that calls gdk_pixbuf_new_from_file_at_scale() and checks
96183796df0c Start looking at the GError parameter every time we call these functions:
Mark Doliner <markdoliner@pidgin.im>
parents: 31584
diff changeset
903 * both the return code and the GError and returns NULL if either one failed.
96183796df0c Start looking at the GError parameter every time we call these functions:
Mark Doliner <markdoliner@pidgin.im>
parents: 31584
diff changeset
904 *
96183796df0c Start looking at the GError parameter every time we call these functions:
Mark Doliner <markdoliner@pidgin.im>
parents: 31584
diff changeset
905 * The gdk-pixbuf documentation implies that it is sufficient to check
96183796df0c Start looking at the GError parameter every time we call these functions:
Mark Doliner <markdoliner@pidgin.im>
parents: 31584
diff changeset
906 * the return value of gdk_pixbuf_new_from_file_at_scale() to determine
96183796df0c Start looking at the GError parameter every time we call these functions:
Mark Doliner <markdoliner@pidgin.im>
parents: 31584
diff changeset
907 * whether the image was able to be loaded. However, this is not the case
96183796df0c Start looking at the GError parameter every time we call these functions:
Mark Doliner <markdoliner@pidgin.im>
parents: 31584
diff changeset
908 * with gdk-pixbuf 2.23.3 and probably many earlier versions. In some
96183796df0c Start looking at the GError parameter every time we call these functions:
Mark Doliner <markdoliner@pidgin.im>
parents: 31584
diff changeset
909 * cases a GdkPixbuf object is returned that will cause some operations
96183796df0c Start looking at the GError parameter every time we call these functions:
Mark Doliner <markdoliner@pidgin.im>
parents: 31584
diff changeset
910 * (like gdk_pixbuf_scale_simple()) to rapidly consume memory in an
96183796df0c Start looking at the GError parameter every time we call these functions:
Mark Doliner <markdoliner@pidgin.im>
parents: 31584
diff changeset
911 * infinite loop.
96183796df0c Start looking at the GError parameter every time we call these functions:
Mark Doliner <markdoliner@pidgin.im>
parents: 31584
diff changeset
912 *
96183796df0c Start looking at the GError parameter every time we call these functions:
Mark Doliner <markdoliner@pidgin.im>
parents: 31584
diff changeset
913 * This function shouldn't be necessary once Pidgin requires a version of
96183796df0c Start looking at the GError parameter every time we call these functions:
Mark Doliner <markdoliner@pidgin.im>
parents: 31584
diff changeset
914 * gdk-pixbuf where the aforementioned bug is fixed. However, it might be
96183796df0c Start looking at the GError parameter every time we call these functions:
Mark Doliner <markdoliner@pidgin.im>
parents: 31584
diff changeset
915 * nice to keep this function around for the debug message that it logs.
96183796df0c Start looking at the GError parameter every time we call these functions:
Mark Doliner <markdoliner@pidgin.im>
parents: 31584
diff changeset
916 *
96183796df0c Start looking at the GError parameter every time we call these functions:
Mark Doliner <markdoliner@pidgin.im>
parents: 31584
diff changeset
917 * @param filename Name of file to load, in the GLib file name encoding
96183796df0c Start looking at the GError parameter every time we call these functions:
Mark Doliner <markdoliner@pidgin.im>
parents: 31584
diff changeset
918 * @param width The width the image should have or -1 to not constrain the width
96183796df0c Start looking at the GError parameter every time we call these functions:
Mark Doliner <markdoliner@pidgin.im>
parents: 31584
diff changeset
919 * @param height The height the image should have or -1 to not constrain the height
96183796df0c Start looking at the GError parameter every time we call these functions:
Mark Doliner <markdoliner@pidgin.im>
parents: 31584
diff changeset
920 * @param preserve_aspect_ratio TRUE to preserve the image's aspect ratio
96183796df0c Start looking at the GError parameter every time we call these functions:
Mark Doliner <markdoliner@pidgin.im>
parents: 31584
diff changeset
921 *
96183796df0c Start looking at the GError parameter every time we call these functions:
Mark Doliner <markdoliner@pidgin.im>
parents: 31584
diff changeset
922 * @return The GdkPixbuf if successful. Otherwise NULL is returned and
96183796df0c Start looking at the GError parameter every time we call these functions:
Mark Doliner <markdoliner@pidgin.im>
parents: 31584
diff changeset
923 * a warning is logged.
96183796df0c Start looking at the GError parameter every time we call these functions:
Mark Doliner <markdoliner@pidgin.im>
parents: 31584
diff changeset
924 *
96183796df0c Start looking at the GError parameter every time we call these functions:
Mark Doliner <markdoliner@pidgin.im>
parents: 31584
diff changeset
925 * @since 2.9.0
96183796df0c Start looking at the GError parameter every time we call these functions:
Mark Doliner <markdoliner@pidgin.im>
parents: 31584
diff changeset
926 */
96183796df0c Start looking at the GError parameter every time we call these functions:
Mark Doliner <markdoliner@pidgin.im>
parents: 31584
diff changeset
927 GdkPixbuf *pidgin_pixbuf_new_from_file_at_scale(const char *filename, int width, int height, gboolean preserve_aspect_ratio);
96183796df0c Start looking at the GError parameter every time we call these functions:
Mark Doliner <markdoliner@pidgin.im>
parents: 31584
diff changeset
928
96183796df0c Start looking at the GError parameter every time we call these functions:
Mark Doliner <markdoliner@pidgin.im>
parents: 31584
diff changeset
929 /**
31321
1fef3832cfa2 Add pidgin_make_scrollable and use it. Cleans up a bunch of duplicate code. Net code loss of 180 lines. Fixes #13073.
Gabriel Schulhof <nix@go-nix.ca>
parents: 30682
diff changeset
930 * Add scrollbars to a widget
32554
0d844fac6679 Fix a bunch of tiny problems generating our doxygen documentation
Mark Doliner <markdoliner@pidgin.im>
parents: 32518
diff changeset
931 * @param child The child widget
0d844fac6679 Fix a bunch of tiny problems generating our doxygen documentation
Mark Doliner <markdoliner@pidgin.im>
parents: 32518
diff changeset
932 * @param hscrollbar_policy Horizontal scrolling policy
0d844fac6679 Fix a bunch of tiny problems generating our doxygen documentation
Mark Doliner <markdoliner@pidgin.im>
parents: 32518
diff changeset
933 * @param vscrollbar_policy Vertical scrolling policy
0d844fac6679 Fix a bunch of tiny problems generating our doxygen documentation
Mark Doliner <markdoliner@pidgin.im>
parents: 32518
diff changeset
934 * @param shadow_type Shadow type
0d844fac6679 Fix a bunch of tiny problems generating our doxygen documentation
Mark Doliner <markdoliner@pidgin.im>
parents: 32518
diff changeset
935 * @param width Desired widget width, or -1 for default
0d844fac6679 Fix a bunch of tiny problems generating our doxygen documentation
Mark Doliner <markdoliner@pidgin.im>
parents: 32518
diff changeset
936 * @param height Desired widget height, or -1 for default
31321
1fef3832cfa2 Add pidgin_make_scrollable and use it. Cleans up a bunch of duplicate code. Net code loss of 180 lines. Fixes #13073.
Gabriel Schulhof <nix@go-nix.ca>
parents: 30682
diff changeset
937 *
1fef3832cfa2 Add pidgin_make_scrollable and use it. Cleans up a bunch of duplicate code. Net code loss of 180 lines. Fixes #13073.
Gabriel Schulhof <nix@go-nix.ca>
parents: 30682
diff changeset
938 * @since 2.8.0
1fef3832cfa2 Add pidgin_make_scrollable and use it. Cleans up a bunch of duplicate code. Net code loss of 180 lines. Fixes #13073.
Gabriel Schulhof <nix@go-nix.ca>
parents: 30682
diff changeset
939 */
1fef3832cfa2 Add pidgin_make_scrollable and use it. Cleans up a bunch of duplicate code. Net code loss of 180 lines. Fixes #13073.
Gabriel Schulhof <nix@go-nix.ca>
parents: 30682
diff changeset
940 GtkWidget *pidgin_make_scrollable(GtkWidget *child, GtkPolicyType hscrollbar_policy, GtkPolicyType vscrollbar_policy, GtkShadowType shadow_type, int width, int height);
1fef3832cfa2 Add pidgin_make_scrollable and use it. Cleans up a bunch of duplicate code. Net code loss of 180 lines. Fixes #13073.
Gabriel Schulhof <nix@go-nix.ca>
parents: 30682
diff changeset
941
1fef3832cfa2 Add pidgin_make_scrollable and use it. Cleans up a bunch of duplicate code. Net code loss of 180 lines. Fixes #13073.
Gabriel Schulhof <nix@go-nix.ca>
parents: 30682
diff changeset
942 /**
24674
36bf974a7d78 Allow plugins to specify custom link types to the GtkIMHtml widget.
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 24569
diff changeset
943 * Initialize some utility functions.
25885
5b5e2ca316b2 Add @since 2.6.0 doxygen comments to some of our new functions, and
Mark Doliner <markdoliner@pidgin.im>
parents: 24674
diff changeset
944 *
24674
36bf974a7d78 Allow plugins to specify custom link types to the GtkIMHtml widget.
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 24569
diff changeset
945 * @since 2.6.0
36bf974a7d78 Allow plugins to specify custom link types to the GtkIMHtml widget.
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 24569
diff changeset
946 */
36bf974a7d78 Allow plugins to specify custom link types to the GtkIMHtml widget.
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 24569
diff changeset
947 void pidgin_utils_init(void);
36bf974a7d78 Allow plugins to specify custom link types to the GtkIMHtml widget.
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 24569
diff changeset
948
36bf974a7d78 Allow plugins to specify custom link types to the GtkIMHtml widget.
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 24569
diff changeset
949 /**
36bf974a7d78 Allow plugins to specify custom link types to the GtkIMHtml widget.
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 24569
diff changeset
950 * Uninitialize some utility functions.
25885
5b5e2ca316b2 Add @since 2.6.0 doxygen comments to some of our new functions, and
Mark Doliner <markdoliner@pidgin.im>
parents: 24674
diff changeset
951 *
24674
36bf974a7d78 Allow plugins to specify custom link types to the GtkIMHtml widget.
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 24569
diff changeset
952 * @since 2.6.0
36bf974a7d78 Allow plugins to specify custom link types to the GtkIMHtml widget.
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 24569
diff changeset
953 */
36bf974a7d78 Allow plugins to specify custom link types to the GtkIMHtml widget.
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 24569
diff changeset
954 void pidgin_utils_uninit(void);
36bf974a7d78 Allow plugins to specify custom link types to the GtkIMHtml widget.
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 24569
diff changeset
955
15562
8c8249fe5e3c gaim_gtk to pidgin. I hope
Sean Egan <seanegan@pidgin.im>
parents: 15496
diff changeset
956 #endif /* _PIDGINUTILS_H_ */
15177
8b6c66e09388 [gaim-migrate @ 17901]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 15094
diff changeset
957

mercurial