libpurple/protocols/facebook/data.h

Mon, 12 Sep 2022 22:08:59 -0500

author
Gary Kramlich <grim@reaperworld.com>
date
Mon, 12 Sep 2022 22:08:59 -0500
changeset 41679
ddd97cdcbefc
parent 41295
2f1bed3c4738
permissions
-rw-r--r--

Remove the list_icon vfunc from PurpleProtocol.

This was replaced by the icon-name, icon-resource-path, and icon-search-path
properties.

Testing Done:
Compiled

Reviewed at https://reviews.imfreedom.org/r/1749/

37258
291b6e1acc24 facebook: implemented group chat support
James Geboski <jgeboski@gmail.com>
parents:
diff changeset
1 /* purple
291b6e1acc24 facebook: implemented group chat support
James Geboski <jgeboski@gmail.com>
parents:
diff changeset
2 *
291b6e1acc24 facebook: implemented group chat support
James Geboski <jgeboski@gmail.com>
parents:
diff changeset
3 * Purple is the legal property of its developers, whose names are too numerous
291b6e1acc24 facebook: implemented group chat support
James Geboski <jgeboski@gmail.com>
parents:
diff changeset
4 * to list here. Please refer to the COPYRIGHT file distributed with this
291b6e1acc24 facebook: implemented group chat support
James Geboski <jgeboski@gmail.com>
parents:
diff changeset
5 * source distribution.
291b6e1acc24 facebook: implemented group chat support
James Geboski <jgeboski@gmail.com>
parents:
diff changeset
6 *
291b6e1acc24 facebook: implemented group chat support
James Geboski <jgeboski@gmail.com>
parents:
diff changeset
7 * This program is free software; you can redistribute it and/or modify
291b6e1acc24 facebook: implemented group chat support
James Geboski <jgeboski@gmail.com>
parents:
diff changeset
8 * it under the terms of the GNU General Public License as published by
291b6e1acc24 facebook: implemented group chat support
James Geboski <jgeboski@gmail.com>
parents:
diff changeset
9 * the Free Software Foundation; either version 2 of the License, or
291b6e1acc24 facebook: implemented group chat support
James Geboski <jgeboski@gmail.com>
parents:
diff changeset
10 * (at your option) any later version.
291b6e1acc24 facebook: implemented group chat support
James Geboski <jgeboski@gmail.com>
parents:
diff changeset
11 *
291b6e1acc24 facebook: implemented group chat support
James Geboski <jgeboski@gmail.com>
parents:
diff changeset
12 * This program is distributed in the hope that it will be useful,
291b6e1acc24 facebook: implemented group chat support
James Geboski <jgeboski@gmail.com>
parents:
diff changeset
13 * but WITHOUT ANY WARRANTY; without even the implied warranty of
291b6e1acc24 facebook: implemented group chat support
James Geboski <jgeboski@gmail.com>
parents:
diff changeset
14 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
291b6e1acc24 facebook: implemented group chat support
James Geboski <jgeboski@gmail.com>
parents:
diff changeset
15 * GNU General Public License for more details.
291b6e1acc24 facebook: implemented group chat support
James Geboski <jgeboski@gmail.com>
parents:
diff changeset
16 *
291b6e1acc24 facebook: implemented group chat support
James Geboski <jgeboski@gmail.com>
parents:
diff changeset
17 * You should have received a copy of the GNU General Public License
291b6e1acc24 facebook: implemented group chat support
James Geboski <jgeboski@gmail.com>
parents:
diff changeset
18 * along with this program; if not, write to the Free Software
291b6e1acc24 facebook: implemented group chat support
James Geboski <jgeboski@gmail.com>
parents:
diff changeset
19 * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02111-1301 USA
291b6e1acc24 facebook: implemented group chat support
James Geboski <jgeboski@gmail.com>
parents:
diff changeset
20 */
291b6e1acc24 facebook: implemented group chat support
James Geboski <jgeboski@gmail.com>
parents:
diff changeset
21
39819
3554dac2991b Standardize all protocol header guard macros.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents: 39550
diff changeset
22 #ifndef PURPLE_FACEBOOK_DATA_H
3554dac2991b Standardize all protocol header guard macros.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents: 39550
diff changeset
23 #define PURPLE_FACEBOOK_DATA_H
37258
291b6e1acc24 facebook: implemented group chat support
James Geboski <jgeboski@gmail.com>
parents:
diff changeset
24
37309
556eea7a45da facebook: merged local glibcompat.h into libpurple's
James Geboski <jgeboski@gmail.com>
parents: 37291
diff changeset
25 #include <glib.h>
556eea7a45da facebook: merged local glibcompat.h into libpurple's
James Geboski <jgeboski@gmail.com>
parents: 37291
diff changeset
26
40358
e6fe6fc1f516 move all protocols, purple plugins, and purple tests to use purple.h instead of including files individually
Gary Kramlich <grim@reaperworld.com>
parents: 40030
diff changeset
27 #include <purple.h>
37310
a1a5f0ac39f2 facebook: cleaned up libpurple includes
James Geboski <jgeboski@gmail.com>
parents: 37309
diff changeset
28
37338
e4d77bc25235 facebook: add and alias non-friend buddies
James Geboski <jgeboski@gmail.com>
parents: 37310
diff changeset
29 #include "api.h"
37310
a1a5f0ac39f2 facebook: cleaned up libpurple includes
James Geboski <jgeboski@gmail.com>
parents: 37309
diff changeset
30 #include "http.h"
37343
3e818c95dfd9 facebook: mark as read only if the conversation is focused
James Geboski <jgeboski@gmail.com>
parents: 37342
diff changeset
31 #include "id.h"
37258
291b6e1acc24 facebook: implemented group chat support
James Geboski <jgeboski@gmail.com>
parents:
diff changeset
32
39550
808e0a11eb9f Use G_DECLARE* in facebook prpl.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents: 39271
diff changeset
33 #define FB_TYPE_DATA fb_data_get_type()
808e0a11eb9f Use G_DECLARE* in facebook prpl.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents: 39271
diff changeset
34 #define FB_TYPE_DATA_IMAGE fb_data_image_get_type()
37361
6545b86a0705 facebook: refactored for future inline images
James Geboski <jgeboski@gmail.com>
parents: 37359
diff changeset
35
37347
34d43f8c10d1 facebook: added GTK-Doc for the internal APIs
James Geboski <jgeboski@gmail.com>
parents: 37343
diff changeset
36 /**
34d43f8c10d1 facebook: added GTK-Doc for the internal APIs
James Geboski <jgeboski@gmail.com>
parents: 37343
diff changeset
37 * FB_DATA_ICON_MAX:
34d43f8c10d1 facebook: added GTK-Doc for the internal APIs
James Geboski <jgeboski@gmail.com>
parents: 37343
diff changeset
38 *
34d43f8c10d1 facebook: added GTK-Doc for the internal APIs
James Geboski <jgeboski@gmail.com>
parents: 37343
diff changeset
39 * The maximum of number of concurrent icon fetches.
34d43f8c10d1 facebook: added GTK-Doc for the internal APIs
James Geboski <jgeboski@gmail.com>
parents: 37343
diff changeset
40 */
34d43f8c10d1 facebook: added GTK-Doc for the internal APIs
James Geboski <jgeboski@gmail.com>
parents: 37343
diff changeset
41 #define FB_DATA_ICON_MAX 4
34d43f8c10d1 facebook: added GTK-Doc for the internal APIs
James Geboski <jgeboski@gmail.com>
parents: 37343
diff changeset
42
39271
5fd417ab577b facebook: Limit received images to 10MiB
Mike Ruprecht <cmaiku@gmail.com>
parents: 37948
diff changeset
43 /**
5fd417ab577b facebook: Limit received images to 10MiB
Mike Ruprecht <cmaiku@gmail.com>
parents: 37948
diff changeset
44 * FB_DATA_ICON_SIZE_MAX:
5fd417ab577b facebook: Limit received images to 10MiB
Mike Ruprecht <cmaiku@gmail.com>
parents: 37948
diff changeset
45 *
5fd417ab577b facebook: Limit received images to 10MiB
Mike Ruprecht <cmaiku@gmail.com>
parents: 37948
diff changeset
46 * The maximum size of a fetched icon.
5fd417ab577b facebook: Limit received images to 10MiB
Mike Ruprecht <cmaiku@gmail.com>
parents: 37948
diff changeset
47 */
5fd417ab577b facebook: Limit received images to 10MiB
Mike Ruprecht <cmaiku@gmail.com>
parents: 37948
diff changeset
48 #define FB_DATA_ICON_SIZE_MAX 0xa00000 /* 10MiB */
5fd417ab577b facebook: Limit received images to 10MiB
Mike Ruprecht <cmaiku@gmail.com>
parents: 37948
diff changeset
49
39550
808e0a11eb9f Use G_DECLARE* in facebook prpl.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents: 39271
diff changeset
50 G_DECLARE_FINAL_TYPE(FbData, fb_data, FB, DATA, GObject)
808e0a11eb9f Use G_DECLARE* in facebook prpl.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents: 39271
diff changeset
51
808e0a11eb9f Use G_DECLARE* in facebook prpl.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents: 39271
diff changeset
52 G_DECLARE_FINAL_TYPE(FbDataImage, fb_data_image, FB, DATA_IMAGE, GObject)
37361
6545b86a0705 facebook: refactored for future inline images
James Geboski <jgeboski@gmail.com>
parents: 37359
diff changeset
53
6545b86a0705 facebook: refactored for future inline images
James Geboski <jgeboski@gmail.com>
parents: 37359
diff changeset
54 /**
6545b86a0705 facebook: refactored for future inline images
James Geboski <jgeboski@gmail.com>
parents: 37359
diff changeset
55 * FbDataImageFunc:
6545b86a0705 facebook: refactored for future inline images
James Geboski <jgeboski@gmail.com>
parents: 37359
diff changeset
56 * @img: The #FbDataImage.
6545b86a0705 facebook: refactored for future inline images
James Geboski <jgeboski@gmail.com>
parents: 37359
diff changeset
57 * @error: The #GError or #NULL.
6545b86a0705 facebook: refactored for future inline images
James Geboski <jgeboski@gmail.com>
parents: 37359
diff changeset
58 *
6545b86a0705 facebook: refactored for future inline images
James Geboski <jgeboski@gmail.com>
parents: 37359
diff changeset
59 * The callback for a fetched #FbDataImage.
6545b86a0705 facebook: refactored for future inline images
James Geboski <jgeboski@gmail.com>
parents: 37359
diff changeset
60 */
6545b86a0705 facebook: refactored for future inline images
James Geboski <jgeboski@gmail.com>
parents: 37359
diff changeset
61 typedef void (*FbDataImageFunc) (FbDataImage *img, GError *error);
37258
291b6e1acc24 facebook: implemented group chat support
James Geboski <jgeboski@gmail.com>
parents:
diff changeset
62
37347
34d43f8c10d1 facebook: added GTK-Doc for the internal APIs
James Geboski <jgeboski@gmail.com>
parents: 37343
diff changeset
63 /**
34d43f8c10d1 facebook: added GTK-Doc for the internal APIs
James Geboski <jgeboski@gmail.com>
parents: 37343
diff changeset
64 * fb_data_new:
34d43f8c10d1 facebook: added GTK-Doc for the internal APIs
James Geboski <jgeboski@gmail.com>
parents: 37343
diff changeset
65 * @gc: The #PurpleConnection.
40030
1827a7e715e0 Pass correct proxy resolver to Facebook soup session.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents: 39819
diff changeset
66 * @resolver: The proxy resolver to use from the account.
37347
34d43f8c10d1 facebook: added GTK-Doc for the internal APIs
James Geboski <jgeboski@gmail.com>
parents: 37343
diff changeset
67 *
34d43f8c10d1 facebook: added GTK-Doc for the internal APIs
James Geboski <jgeboski@gmail.com>
parents: 37343
diff changeset
68 * Creates a new #FbData. The returned #FbData should be freed with
34d43f8c10d1 facebook: added GTK-Doc for the internal APIs
James Geboski <jgeboski@gmail.com>
parents: 37343
diff changeset
69 * #g_object_unref() when no longer needed.
34d43f8c10d1 facebook: added GTK-Doc for the internal APIs
James Geboski <jgeboski@gmail.com>
parents: 37343
diff changeset
70 *
34d43f8c10d1 facebook: added GTK-Doc for the internal APIs
James Geboski <jgeboski@gmail.com>
parents: 37343
diff changeset
71 * Returns: The new #FbData.
34d43f8c10d1 facebook: added GTK-Doc for the internal APIs
James Geboski <jgeboski@gmail.com>
parents: 37343
diff changeset
72 */
40030
1827a7e715e0 Pass correct proxy resolver to Facebook soup session.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents: 39819
diff changeset
73 FbData *fb_data_new(PurpleConnection *gc, GProxyResolver *resolver);
37258
291b6e1acc24 facebook: implemented group chat support
James Geboski <jgeboski@gmail.com>
parents:
diff changeset
74
37347
34d43f8c10d1 facebook: added GTK-Doc for the internal APIs
James Geboski <jgeboski@gmail.com>
parents: 37343
diff changeset
75 /**
34d43f8c10d1 facebook: added GTK-Doc for the internal APIs
James Geboski <jgeboski@gmail.com>
parents: 37343
diff changeset
76 * fb_data_load:
34d43f8c10d1 facebook: added GTK-Doc for the internal APIs
James Geboski <jgeboski@gmail.com>
parents: 37343
diff changeset
77 * @fata: The #FbData.
34d43f8c10d1 facebook: added GTK-Doc for the internal APIs
James Geboski <jgeboski@gmail.com>
parents: 37343
diff changeset
78 *
34d43f8c10d1 facebook: added GTK-Doc for the internal APIs
James Geboski <jgeboski@gmail.com>
parents: 37343
diff changeset
79 * Loads the internal data from the underlying #PurpleAccount.
34d43f8c10d1 facebook: added GTK-Doc for the internal APIs
James Geboski <jgeboski@gmail.com>
parents: 37343
diff changeset
80 *
37473
9fd3018c170f facebook: trivial GTK-Doc fixes
James Geboski <jgeboski@gmail.com>
parents: 37364
diff changeset
81 * Return: #TRUE if all of the data was loaded, otherwise #FALSE.
37347
34d43f8c10d1 facebook: added GTK-Doc for the internal APIs
James Geboski <jgeboski@gmail.com>
parents: 37343
diff changeset
82 */
37258
291b6e1acc24 facebook: implemented group chat support
James Geboski <jgeboski@gmail.com>
parents:
diff changeset
83 gboolean
291b6e1acc24 facebook: implemented group chat support
James Geboski <jgeboski@gmail.com>
parents:
diff changeset
84 fb_data_load(FbData *fata);
291b6e1acc24 facebook: implemented group chat support
James Geboski <jgeboski@gmail.com>
parents:
diff changeset
85
37347
34d43f8c10d1 facebook: added GTK-Doc for the internal APIs
James Geboski <jgeboski@gmail.com>
parents: 37343
diff changeset
86 /**
34d43f8c10d1 facebook: added GTK-Doc for the internal APIs
James Geboski <jgeboski@gmail.com>
parents: 37343
diff changeset
87 * fb_data_save:
34d43f8c10d1 facebook: added GTK-Doc for the internal APIs
James Geboski <jgeboski@gmail.com>
parents: 37343
diff changeset
88 * @fata: The #FbData.
34d43f8c10d1 facebook: added GTK-Doc for the internal APIs
James Geboski <jgeboski@gmail.com>
parents: 37343
diff changeset
89 *
34d43f8c10d1 facebook: added GTK-Doc for the internal APIs
James Geboski <jgeboski@gmail.com>
parents: 37343
diff changeset
90 * Saves the internal data to the underlying #PurpleAccount.
34d43f8c10d1 facebook: added GTK-Doc for the internal APIs
James Geboski <jgeboski@gmail.com>
parents: 37343
diff changeset
91 */
37258
291b6e1acc24 facebook: implemented group chat support
James Geboski <jgeboski@gmail.com>
parents:
diff changeset
92 void
291b6e1acc24 facebook: implemented group chat support
James Geboski <jgeboski@gmail.com>
parents:
diff changeset
93 fb_data_save(FbData *fata);
291b6e1acc24 facebook: implemented group chat support
James Geboski <jgeboski@gmail.com>
parents:
diff changeset
94
37347
34d43f8c10d1 facebook: added GTK-Doc for the internal APIs
James Geboski <jgeboski@gmail.com>
parents: 37343
diff changeset
95 /**
41295
2f1bed3c4738 Use a source identifier for fb_data_add_timeout
Elliott Sales de Andrade <quantum.analyst@gmail.com>
parents: 41294
diff changeset
96 * fb_data_save_timeout:
37347
34d43f8c10d1 facebook: added GTK-Doc for the internal APIs
James Geboski <jgeboski@gmail.com>
parents: 37343
diff changeset
97 * @fata: The #FbData.
34d43f8c10d1 facebook: added GTK-Doc for the internal APIs
James Geboski <jgeboski@gmail.com>
parents: 37343
diff changeset
98 * @name: The name of the timeout.
41295
2f1bed3c4738 Use a source identifier for fb_data_add_timeout
Elliott Sales de Andrade <quantum.analyst@gmail.com>
parents: 41294
diff changeset
99 * @id: The source id of the timeout.
37347
34d43f8c10d1 facebook: added GTK-Doc for the internal APIs
James Geboski <jgeboski@gmail.com>
parents: 37343
diff changeset
100 *
41295
2f1bed3c4738 Use a source identifier for fb_data_add_timeout
Elliott Sales de Andrade <quantum.analyst@gmail.com>
parents: 41294
diff changeset
101 * Saves a new callback timer. The callback should be added to the main loop
2f1bed3c4738 Use a source identifier for fb_data_add_timeout
Elliott Sales de Andrade <quantum.analyst@gmail.com>
parents: 41294
diff changeset
102 * with `g_timeout_add` or similar, and the returned source identifier passed
2f1bed3c4738 Use a source identifier for fb_data_add_timeout
Elliott Sales de Andrade <quantum.analyst@gmail.com>
parents: 41294
diff changeset
103 * to this function. The timeout should be cleared with
2f1bed3c4738 Use a source identifier for fb_data_add_timeout
Elliott Sales de Andrade <quantum.analyst@gmail.com>
parents: 41294
diff changeset
104 * #fb_data_clear_timeout() when no longer needed.
37347
34d43f8c10d1 facebook: added GTK-Doc for the internal APIs
James Geboski <jgeboski@gmail.com>
parents: 37343
diff changeset
105 */
37342
acae53caaff0 facebook: periodically refetch the contact list for updates
James Geboski <jgeboski@gmail.com>
parents: 37338
diff changeset
106 void
41295
2f1bed3c4738 Use a source identifier for fb_data_add_timeout
Elliott Sales de Andrade <quantum.analyst@gmail.com>
parents: 41294
diff changeset
107 fb_data_save_timeout(FbData *fata, const gchar *name, guint id);
37342
acae53caaff0 facebook: periodically refetch the contact list for updates
James Geboski <jgeboski@gmail.com>
parents: 37338
diff changeset
108
37347
34d43f8c10d1 facebook: added GTK-Doc for the internal APIs
James Geboski <jgeboski@gmail.com>
parents: 37343
diff changeset
109 /**
34d43f8c10d1 facebook: added GTK-Doc for the internal APIs
James Geboski <jgeboski@gmail.com>
parents: 37343
diff changeset
110 * fb_data_clear_timeout:
34d43f8c10d1 facebook: added GTK-Doc for the internal APIs
James Geboski <jgeboski@gmail.com>
parents: 37343
diff changeset
111 * @fata: The #FbData.
34d43f8c10d1 facebook: added GTK-Doc for the internal APIs
James Geboski <jgeboski@gmail.com>
parents: 37343
diff changeset
112 * @name: The name of the timeout.
34d43f8c10d1 facebook: added GTK-Doc for the internal APIs
James Geboski <jgeboski@gmail.com>
parents: 37343
diff changeset
113 * @remove: #TRUE to remove from the event loop, otherwise #FALSE.
34d43f8c10d1 facebook: added GTK-Doc for the internal APIs
James Geboski <jgeboski@gmail.com>
parents: 37343
diff changeset
114 *
34d43f8c10d1 facebook: added GTK-Doc for the internal APIs
James Geboski <jgeboski@gmail.com>
parents: 37343
diff changeset
115 * Clears and removes a callback timer. The only time @remove should be
34d43f8c10d1 facebook: added GTK-Doc for the internal APIs
James Geboski <jgeboski@gmail.com>
parents: 37343
diff changeset
116 * #FALSE, is when being called from a #GSourceFunc, which is returning
34d43f8c10d1 facebook: added GTK-Doc for the internal APIs
James Geboski <jgeboski@gmail.com>
parents: 37343
diff changeset
117 * #FALSE.
34d43f8c10d1 facebook: added GTK-Doc for the internal APIs
James Geboski <jgeboski@gmail.com>
parents: 37343
diff changeset
118 */
37342
acae53caaff0 facebook: periodically refetch the contact list for updates
James Geboski <jgeboski@gmail.com>
parents: 37338
diff changeset
119 void
37343
3e818c95dfd9 facebook: mark as read only if the conversation is focused
James Geboski <jgeboski@gmail.com>
parents: 37342
diff changeset
120 fb_data_clear_timeout(FbData *fata, const gchar *name, gboolean remove);
37342
acae53caaff0 facebook: periodically refetch the contact list for updates
James Geboski <jgeboski@gmail.com>
parents: 37338
diff changeset
121
37347
34d43f8c10d1 facebook: added GTK-Doc for the internal APIs
James Geboski <jgeboski@gmail.com>
parents: 37343
diff changeset
122 /**
34d43f8c10d1 facebook: added GTK-Doc for the internal APIs
James Geboski <jgeboski@gmail.com>
parents: 37343
diff changeset
123 * fb_data_get_api:
34d43f8c10d1 facebook: added GTK-Doc for the internal APIs
James Geboski <jgeboski@gmail.com>
parents: 37343
diff changeset
124 * @fata: The #FbData.
34d43f8c10d1 facebook: added GTK-Doc for the internal APIs
James Geboski <jgeboski@gmail.com>
parents: 37343
diff changeset
125 *
34d43f8c10d1 facebook: added GTK-Doc for the internal APIs
James Geboski <jgeboski@gmail.com>
parents: 37343
diff changeset
126 * Gets the #FbApi from the #FbData.
34d43f8c10d1 facebook: added GTK-Doc for the internal APIs
James Geboski <jgeboski@gmail.com>
parents: 37343
diff changeset
127 *
41293
bfd8314a1a74 Add missing return transfer annotation in Facebook
Elliott Sales de Andrade <quantum.analyst@gmail.com>
parents: 41122
diff changeset
128 * Return: (transfer none): The #FbApi.
37347
34d43f8c10d1 facebook: added GTK-Doc for the internal APIs
James Geboski <jgeboski@gmail.com>
parents: 37343
diff changeset
129 */
37258
291b6e1acc24 facebook: implemented group chat support
James Geboski <jgeboski@gmail.com>
parents:
diff changeset
130 FbApi *
291b6e1acc24 facebook: implemented group chat support
James Geboski <jgeboski@gmail.com>
parents:
diff changeset
131 fb_data_get_api(FbData *fata);
291b6e1acc24 facebook: implemented group chat support
James Geboski <jgeboski@gmail.com>
parents:
diff changeset
132
37347
34d43f8c10d1 facebook: added GTK-Doc for the internal APIs
James Geboski <jgeboski@gmail.com>
parents: 37343
diff changeset
133 /**
34d43f8c10d1 facebook: added GTK-Doc for the internal APIs
James Geboski <jgeboski@gmail.com>
parents: 37343
diff changeset
134 * fb_data_get_connection:
34d43f8c10d1 facebook: added GTK-Doc for the internal APIs
James Geboski <jgeboski@gmail.com>
parents: 37343
diff changeset
135 * @fata: The #FbData.
34d43f8c10d1 facebook: added GTK-Doc for the internal APIs
James Geboski <jgeboski@gmail.com>
parents: 37343
diff changeset
136 *
34d43f8c10d1 facebook: added GTK-Doc for the internal APIs
James Geboski <jgeboski@gmail.com>
parents: 37343
diff changeset
137 * Gets the #PurpleConnection from the #FbData.
34d43f8c10d1 facebook: added GTK-Doc for the internal APIs
James Geboski <jgeboski@gmail.com>
parents: 37343
diff changeset
138 *
41293
bfd8314a1a74 Add missing return transfer annotation in Facebook
Elliott Sales de Andrade <quantum.analyst@gmail.com>
parents: 41122
diff changeset
139 * Return: (transfer none): The #PurpleConnection.
37347
34d43f8c10d1 facebook: added GTK-Doc for the internal APIs
James Geboski <jgeboski@gmail.com>
parents: 37343
diff changeset
140 */
37258
291b6e1acc24 facebook: implemented group chat support
James Geboski <jgeboski@gmail.com>
parents:
diff changeset
141 PurpleConnection *
291b6e1acc24 facebook: implemented group chat support
James Geboski <jgeboski@gmail.com>
parents:
diff changeset
142 fb_data_get_connection(FbData *fata);
291b6e1acc24 facebook: implemented group chat support
James Geboski <jgeboski@gmail.com>
parents:
diff changeset
143
37347
34d43f8c10d1 facebook: added GTK-Doc for the internal APIs
James Geboski <jgeboski@gmail.com>
parents: 37343
diff changeset
144 /**
34d43f8c10d1 facebook: added GTK-Doc for the internal APIs
James Geboski <jgeboski@gmail.com>
parents: 37343
diff changeset
145 * fb_data_get_roomlist:
34d43f8c10d1 facebook: added GTK-Doc for the internal APIs
James Geboski <jgeboski@gmail.com>
parents: 37343
diff changeset
146 * @fata: The #FbData.
34d43f8c10d1 facebook: added GTK-Doc for the internal APIs
James Geboski <jgeboski@gmail.com>
parents: 37343
diff changeset
147 *
34d43f8c10d1 facebook: added GTK-Doc for the internal APIs
James Geboski <jgeboski@gmail.com>
parents: 37343
diff changeset
148 * Gets the #PurpleRoomlist from the #FbData.
34d43f8c10d1 facebook: added GTK-Doc for the internal APIs
James Geboski <jgeboski@gmail.com>
parents: 37343
diff changeset
149 *
41293
bfd8314a1a74 Add missing return transfer annotation in Facebook
Elliott Sales de Andrade <quantum.analyst@gmail.com>
parents: 41122
diff changeset
150 * Return: (transfer none): The #PurpleRoomlist.
37347
34d43f8c10d1 facebook: added GTK-Doc for the internal APIs
James Geboski <jgeboski@gmail.com>
parents: 37343
diff changeset
151 */
37258
291b6e1acc24 facebook: implemented group chat support
James Geboski <jgeboski@gmail.com>
parents:
diff changeset
152 PurpleRoomlist *
291b6e1acc24 facebook: implemented group chat support
James Geboski <jgeboski@gmail.com>
parents:
diff changeset
153 fb_data_get_roomlist(FbData *fata);
291b6e1acc24 facebook: implemented group chat support
James Geboski <jgeboski@gmail.com>
parents:
diff changeset
154
37347
34d43f8c10d1 facebook: added GTK-Doc for the internal APIs
James Geboski <jgeboski@gmail.com>
parents: 37343
diff changeset
155 /**
34d43f8c10d1 facebook: added GTK-Doc for the internal APIs
James Geboski <jgeboski@gmail.com>
parents: 37343
diff changeset
156 * fb_data_get_unread:
34d43f8c10d1 facebook: added GTK-Doc for the internal APIs
James Geboski <jgeboski@gmail.com>
parents: 37343
diff changeset
157 * @fata: The #FbData.
34d43f8c10d1 facebook: added GTK-Doc for the internal APIs
James Geboski <jgeboski@gmail.com>
parents: 37343
diff changeset
158 * @id: The #FbId.
34d43f8c10d1 facebook: added GTK-Doc for the internal APIs
James Geboski <jgeboski@gmail.com>
parents: 37343
diff changeset
159 *
34d43f8c10d1 facebook: added GTK-Doc for the internal APIs
James Geboski <jgeboski@gmail.com>
parents: 37343
diff changeset
160 * Gets the unread state of an #FbId.
34d43f8c10d1 facebook: added GTK-Doc for the internal APIs
James Geboski <jgeboski@gmail.com>
parents: 37343
diff changeset
161 *
34d43f8c10d1 facebook: added GTK-Doc for the internal APIs
James Geboski <jgeboski@gmail.com>
parents: 37343
diff changeset
162 * Return: #TRUE if the #FbId is unread, otherwise #FALSE.
34d43f8c10d1 facebook: added GTK-Doc for the internal APIs
James Geboski <jgeboski@gmail.com>
parents: 37343
diff changeset
163 */
37343
3e818c95dfd9 facebook: mark as read only if the conversation is focused
James Geboski <jgeboski@gmail.com>
parents: 37342
diff changeset
164 gboolean
3e818c95dfd9 facebook: mark as read only if the conversation is focused
James Geboski <jgeboski@gmail.com>
parents: 37342
diff changeset
165 fb_data_get_unread(FbData *fata, FbId id);
3e818c95dfd9 facebook: mark as read only if the conversation is focused
James Geboski <jgeboski@gmail.com>
parents: 37342
diff changeset
166
37347
34d43f8c10d1 facebook: added GTK-Doc for the internal APIs
James Geboski <jgeboski@gmail.com>
parents: 37343
diff changeset
167 /**
34d43f8c10d1 facebook: added GTK-Doc for the internal APIs
James Geboski <jgeboski@gmail.com>
parents: 37343
diff changeset
168 * fb_data_set_roomlist:
34d43f8c10d1 facebook: added GTK-Doc for the internal APIs
James Geboski <jgeboski@gmail.com>
parents: 37343
diff changeset
169 * @fata: The #FbData.
34d43f8c10d1 facebook: added GTK-Doc for the internal APIs
James Geboski <jgeboski@gmail.com>
parents: 37343
diff changeset
170 * @list: The #PurpleRoomlist.
34d43f8c10d1 facebook: added GTK-Doc for the internal APIs
James Geboski <jgeboski@gmail.com>
parents: 37343
diff changeset
171 *
34d43f8c10d1 facebook: added GTK-Doc for the internal APIs
James Geboski <jgeboski@gmail.com>
parents: 37343
diff changeset
172 * Sets the #PurpleRoomlist to the #FbData.
34d43f8c10d1 facebook: added GTK-Doc for the internal APIs
James Geboski <jgeboski@gmail.com>
parents: 37343
diff changeset
173 */
37258
291b6e1acc24 facebook: implemented group chat support
James Geboski <jgeboski@gmail.com>
parents:
diff changeset
174 void
291b6e1acc24 facebook: implemented group chat support
James Geboski <jgeboski@gmail.com>
parents:
diff changeset
175 fb_data_set_roomlist(FbData *fata, PurpleRoomlist *list);
291b6e1acc24 facebook: implemented group chat support
James Geboski <jgeboski@gmail.com>
parents:
diff changeset
176
37347
34d43f8c10d1 facebook: added GTK-Doc for the internal APIs
James Geboski <jgeboski@gmail.com>
parents: 37343
diff changeset
177 /**
34d43f8c10d1 facebook: added GTK-Doc for the internal APIs
James Geboski <jgeboski@gmail.com>
parents: 37343
diff changeset
178 * fb_data_set_unread:
34d43f8c10d1 facebook: added GTK-Doc for the internal APIs
James Geboski <jgeboski@gmail.com>
parents: 37343
diff changeset
179 * @fata: The #FbData.
34d43f8c10d1 facebook: added GTK-Doc for the internal APIs
James Geboski <jgeboski@gmail.com>
parents: 37343
diff changeset
180 * @id: The #FbId.
37473
9fd3018c170f facebook: trivial GTK-Doc fixes
James Geboski <jgeboski@gmail.com>
parents: 37364
diff changeset
181 * @unread: #TRUE if the #FbId is unread, otherwise #FALSE.
37347
34d43f8c10d1 facebook: added GTK-Doc for the internal APIs
James Geboski <jgeboski@gmail.com>
parents: 37343
diff changeset
182 *
34d43f8c10d1 facebook: added GTK-Doc for the internal APIs
James Geboski <jgeboski@gmail.com>
parents: 37343
diff changeset
183 * Sets the unread state of an #FbId to the #FbData.
34d43f8c10d1 facebook: added GTK-Doc for the internal APIs
James Geboski <jgeboski@gmail.com>
parents: 37343
diff changeset
184 */
37338
e4d77bc25235 facebook: add and alias non-friend buddies
James Geboski <jgeboski@gmail.com>
parents: 37310
diff changeset
185 void
37343
3e818c95dfd9 facebook: mark as read only if the conversation is focused
James Geboski <jgeboski@gmail.com>
parents: 37342
diff changeset
186 fb_data_set_unread(FbData *fata, FbId id, gboolean unread);
3e818c95dfd9 facebook: mark as read only if the conversation is focused
James Geboski <jgeboski@gmail.com>
parents: 37342
diff changeset
187
37347
34d43f8c10d1 facebook: added GTK-Doc for the internal APIs
James Geboski <jgeboski@gmail.com>
parents: 37343
diff changeset
188 /**
34d43f8c10d1 facebook: added GTK-Doc for the internal APIs
James Geboski <jgeboski@gmail.com>
parents: 37343
diff changeset
189 * fb_data_add_message:
34d43f8c10d1 facebook: added GTK-Doc for the internal APIs
James Geboski <jgeboski@gmail.com>
parents: 37343
diff changeset
190 * @fata: The #FbData.
34d43f8c10d1 facebook: added GTK-Doc for the internal APIs
James Geboski <jgeboski@gmail.com>
parents: 37343
diff changeset
191 * @msg: The #FbApiMessage.
34d43f8c10d1 facebook: added GTK-Doc for the internal APIs
James Geboski <jgeboski@gmail.com>
parents: 37343
diff changeset
192 *
34d43f8c10d1 facebook: added GTK-Doc for the internal APIs
James Geboski <jgeboski@gmail.com>
parents: 37343
diff changeset
193 * Adds an #FbApiMessage to the #FbData.
34d43f8c10d1 facebook: added GTK-Doc for the internal APIs
James Geboski <jgeboski@gmail.com>
parents: 37343
diff changeset
194 */
37343
3e818c95dfd9 facebook: mark as read only if the conversation is focused
James Geboski <jgeboski@gmail.com>
parents: 37342
diff changeset
195 void
37338
e4d77bc25235 facebook: add and alias non-friend buddies
James Geboski <jgeboski@gmail.com>
parents: 37310
diff changeset
196 fb_data_add_message(FbData *fata, FbApiMessage *msg);
e4d77bc25235 facebook: add and alias non-friend buddies
James Geboski <jgeboski@gmail.com>
parents: 37310
diff changeset
197
37347
34d43f8c10d1 facebook: added GTK-Doc for the internal APIs
James Geboski <jgeboski@gmail.com>
parents: 37343
diff changeset
198 /**
37364
d8e50d403e82 facebook: display images in-line
James Geboski <jgeboski@gmail.com>
parents: 37361
diff changeset
199 * fb_data_remove_message:
d8e50d403e82 facebook: display images in-line
James Geboski <jgeboski@gmail.com>
parents: 37361
diff changeset
200 * @fata: The #FbData.
d8e50d403e82 facebook: display images in-line
James Geboski <jgeboski@gmail.com>
parents: 37361
diff changeset
201 * @msg: The #FbApiMessage.
d8e50d403e82 facebook: display images in-line
James Geboski <jgeboski@gmail.com>
parents: 37361
diff changeset
202 *
d8e50d403e82 facebook: display images in-line
James Geboski <jgeboski@gmail.com>
parents: 37361
diff changeset
203 * Removes an #FbApiMessage from the #FbData.
d8e50d403e82 facebook: display images in-line
James Geboski <jgeboski@gmail.com>
parents: 37361
diff changeset
204 */
d8e50d403e82 facebook: display images in-line
James Geboski <jgeboski@gmail.com>
parents: 37361
diff changeset
205 void
d8e50d403e82 facebook: display images in-line
James Geboski <jgeboski@gmail.com>
parents: 37361
diff changeset
206 fb_data_remove_message(FbData *fata, FbApiMessage *msg);
d8e50d403e82 facebook: display images in-line
James Geboski <jgeboski@gmail.com>
parents: 37361
diff changeset
207
d8e50d403e82 facebook: display images in-line
James Geboski <jgeboski@gmail.com>
parents: 37361
diff changeset
208 /**
37347
34d43f8c10d1 facebook: added GTK-Doc for the internal APIs
James Geboski <jgeboski@gmail.com>
parents: 37343
diff changeset
209 * fb_data_take_messages:
34d43f8c10d1 facebook: added GTK-Doc for the internal APIs
James Geboski <jgeboski@gmail.com>
parents: 37343
diff changeset
210 * @fata: The #FbData.
34d43f8c10d1 facebook: added GTK-Doc for the internal APIs
James Geboski <jgeboski@gmail.com>
parents: 37343
diff changeset
211 * @uid: The user #FbId.
34d43f8c10d1 facebook: added GTK-Doc for the internal APIs
James Geboski <jgeboski@gmail.com>
parents: 37343
diff changeset
212 *
34d43f8c10d1 facebook: added GTK-Doc for the internal APIs
James Geboski <jgeboski@gmail.com>
parents: 37343
diff changeset
213 * Gets a #GSList of messages by the user #FbId from the #FbData. The
41294
3f0b065e58f7 Add missing element-type annotation in Facebook
Elliott Sales de Andrade <quantum.analyst@gmail.com>
parents: 41293
diff changeset
214 * #FbApiMessage's are removed from the #FbData.
3f0b065e58f7 Add missing element-type annotation in Facebook
Elliott Sales de Andrade <quantum.analyst@gmail.com>
parents: 41293
diff changeset
215 *
3f0b065e58f7 Add missing element-type annotation in Facebook
Elliott Sales de Andrade <quantum.analyst@gmail.com>
parents: 41293
diff changeset
216 * Returns: (element-type FbApiMessage) (transfer full): The messages from the
3f0b065e58f7 Add missing element-type annotation in Facebook
Elliott Sales de Andrade <quantum.analyst@gmail.com>
parents: 41293
diff changeset
217 * user.
37347
34d43f8c10d1 facebook: added GTK-Doc for the internal APIs
James Geboski <jgeboski@gmail.com>
parents: 37343
diff changeset
218 */
37338
e4d77bc25235 facebook: add and alias non-friend buddies
James Geboski <jgeboski@gmail.com>
parents: 37310
diff changeset
219 GSList *
e4d77bc25235 facebook: add and alias non-friend buddies
James Geboski <jgeboski@gmail.com>
parents: 37310
diff changeset
220 fb_data_take_messages(FbData *fata, FbId uid);
e4d77bc25235 facebook: add and alias non-friend buddies
James Geboski <jgeboski@gmail.com>
parents: 37310
diff changeset
221
37347
34d43f8c10d1 facebook: added GTK-Doc for the internal APIs
James Geboski <jgeboski@gmail.com>
parents: 37343
diff changeset
222 /**
37361
6545b86a0705 facebook: refactored for future inline images
James Geboski <jgeboski@gmail.com>
parents: 37359
diff changeset
223 * fb_data_image_add:
37347
34d43f8c10d1 facebook: added GTK-Doc for the internal APIs
James Geboski <jgeboski@gmail.com>
parents: 37343
diff changeset
224 * @fata: The #FbData.
34d43f8c10d1 facebook: added GTK-Doc for the internal APIs
James Geboski <jgeboski@gmail.com>
parents: 37343
diff changeset
225 * @url: The image URL.
37361
6545b86a0705 facebook: refactored for future inline images
James Geboski <jgeboski@gmail.com>
parents: 37359
diff changeset
226 * @func: The #FbDataImageFunc.
6545b86a0705 facebook: refactored for future inline images
James Geboski <jgeboski@gmail.com>
parents: 37359
diff changeset
227 * @data: The user-defined data.
37560
92885e0456ed facebook: fixed a crash with incoming messages from non-friends
James Geboski <jgeboski@gmail.com>
parents: 37473
diff changeset
228 * @dunc: The #GDestroyNotify for @data or #NULL.
37361
6545b86a0705 facebook: refactored for future inline images
James Geboski <jgeboski@gmail.com>
parents: 37359
diff changeset
229 *
6545b86a0705 facebook: refactored for future inline images
James Geboski <jgeboski@gmail.com>
parents: 37359
diff changeset
230 * Adds a new #FbDataImage to the #FbData. This is used to fetch images
6545b86a0705 facebook: refactored for future inline images
James Geboski <jgeboski@gmail.com>
parents: 37359
diff changeset
231 * from HTTP sources. After calling this, #fb_data_image_queue() should
6545b86a0705 facebook: refactored for future inline images
James Geboski <jgeboski@gmail.com>
parents: 37359
diff changeset
232 * be called to queue the fetching process.
37347
34d43f8c10d1 facebook: added GTK-Doc for the internal APIs
James Geboski <jgeboski@gmail.com>
parents: 37343
diff changeset
233 *
41293
bfd8314a1a74 Add missing return transfer annotation in Facebook
Elliott Sales de Andrade <quantum.analyst@gmail.com>
parents: 41122
diff changeset
234 * Return: (transfer none): The #FbDataImage.
37361
6545b86a0705 facebook: refactored for future inline images
James Geboski <jgeboski@gmail.com>
parents: 37359
diff changeset
235 */
6545b86a0705 facebook: refactored for future inline images
James Geboski <jgeboski@gmail.com>
parents: 37359
diff changeset
236 FbDataImage *
6545b86a0705 facebook: refactored for future inline images
James Geboski <jgeboski@gmail.com>
parents: 37359
diff changeset
237 fb_data_image_add(FbData *fata, const gchar *url, FbDataImageFunc func,
37560
92885e0456ed facebook: fixed a crash with incoming messages from non-friends
James Geboski <jgeboski@gmail.com>
parents: 37473
diff changeset
238 gpointer data, GDestroyNotify dunc);
37361
6545b86a0705 facebook: refactored for future inline images
James Geboski <jgeboski@gmail.com>
parents: 37359
diff changeset
239
6545b86a0705 facebook: refactored for future inline images
James Geboski <jgeboski@gmail.com>
parents: 37359
diff changeset
240 /**
6545b86a0705 facebook: refactored for future inline images
James Geboski <jgeboski@gmail.com>
parents: 37359
diff changeset
241 * fb_data_image_get_active:
6545b86a0705 facebook: refactored for future inline images
James Geboski <jgeboski@gmail.com>
parents: 37359
diff changeset
242 * @img: The #FbDataImage.
6545b86a0705 facebook: refactored for future inline images
James Geboski <jgeboski@gmail.com>
parents: 37359
diff changeset
243 *
6545b86a0705 facebook: refactored for future inline images
James Geboski <jgeboski@gmail.com>
parents: 37359
diff changeset
244 * Gets the active fetching state from the #FbDataImage.
37347
34d43f8c10d1 facebook: added GTK-Doc for the internal APIs
James Geboski <jgeboski@gmail.com>
parents: 37343
diff changeset
245 *
37361
6545b86a0705 facebook: refactored for future inline images
James Geboski <jgeboski@gmail.com>
parents: 37359
diff changeset
246 * Returns: #TRUE if the image is being fetched, otherwise #FALSE.
37347
34d43f8c10d1 facebook: added GTK-Doc for the internal APIs
James Geboski <jgeboski@gmail.com>
parents: 37343
diff changeset
247 */
37361
6545b86a0705 facebook: refactored for future inline images
James Geboski <jgeboski@gmail.com>
parents: 37359
diff changeset
248 gboolean
6545b86a0705 facebook: refactored for future inline images
James Geboski <jgeboski@gmail.com>
parents: 37359
diff changeset
249 fb_data_image_get_active(FbDataImage *img);
6545b86a0705 facebook: refactored for future inline images
James Geboski <jgeboski@gmail.com>
parents: 37359
diff changeset
250
6545b86a0705 facebook: refactored for future inline images
James Geboski <jgeboski@gmail.com>
parents: 37359
diff changeset
251 /**
6545b86a0705 facebook: refactored for future inline images
James Geboski <jgeboski@gmail.com>
parents: 37359
diff changeset
252 * fb_data_image_get_data:
6545b86a0705 facebook: refactored for future inline images
James Geboski <jgeboski@gmail.com>
parents: 37359
diff changeset
253 * @img: The #FbDataImage.
6545b86a0705 facebook: refactored for future inline images
James Geboski <jgeboski@gmail.com>
parents: 37359
diff changeset
254 *
6545b86a0705 facebook: refactored for future inline images
James Geboski <jgeboski@gmail.com>
parents: 37359
diff changeset
255 * Gets the user-defined data from the #FbDataImage.
6545b86a0705 facebook: refactored for future inline images
James Geboski <jgeboski@gmail.com>
parents: 37359
diff changeset
256 *
6545b86a0705 facebook: refactored for future inline images
James Geboski <jgeboski@gmail.com>
parents: 37359
diff changeset
257 * Returns: The user-defined data.
6545b86a0705 facebook: refactored for future inline images
James Geboski <jgeboski@gmail.com>
parents: 37359
diff changeset
258 */
6545b86a0705 facebook: refactored for future inline images
James Geboski <jgeboski@gmail.com>
parents: 37359
diff changeset
259 gpointer
6545b86a0705 facebook: refactored for future inline images
James Geboski <jgeboski@gmail.com>
parents: 37359
diff changeset
260 fb_data_image_get_data(FbDataImage *img);
37276
853fadf2e250 facebook: queue icon downloads to prevent lag
James Geboski <jgeboski@gmail.com>
parents: 37265
diff changeset
261
37347
34d43f8c10d1 facebook: added GTK-Doc for the internal APIs
James Geboski <jgeboski@gmail.com>
parents: 37343
diff changeset
262 /**
37361
6545b86a0705 facebook: refactored for future inline images
James Geboski <jgeboski@gmail.com>
parents: 37359
diff changeset
263 * fb_data_image_get_fata:
6545b86a0705 facebook: refactored for future inline images
James Geboski <jgeboski@gmail.com>
parents: 37359
diff changeset
264 * @img: The #FbDataImage.
6545b86a0705 facebook: refactored for future inline images
James Geboski <jgeboski@gmail.com>
parents: 37359
diff changeset
265 *
6545b86a0705 facebook: refactored for future inline images
James Geboski <jgeboski@gmail.com>
parents: 37359
diff changeset
266 * Gets the #FbData from the #FbDataImage.
37347
34d43f8c10d1 facebook: added GTK-Doc for the internal APIs
James Geboski <jgeboski@gmail.com>
parents: 37343
diff changeset
267 *
41293
bfd8314a1a74 Add missing return transfer annotation in Facebook
Elliott Sales de Andrade <quantum.analyst@gmail.com>
parents: 41122
diff changeset
268 * Returns: (transfer none): The #FbData.
37347
34d43f8c10d1 facebook: added GTK-Doc for the internal APIs
James Geboski <jgeboski@gmail.com>
parents: 37343
diff changeset
269 */
37361
6545b86a0705 facebook: refactored for future inline images
James Geboski <jgeboski@gmail.com>
parents: 37359
diff changeset
270 FbData *
6545b86a0705 facebook: refactored for future inline images
James Geboski <jgeboski@gmail.com>
parents: 37359
diff changeset
271 fb_data_image_get_fata(FbDataImage *img);
6545b86a0705 facebook: refactored for future inline images
James Geboski <jgeboski@gmail.com>
parents: 37359
diff changeset
272
6545b86a0705 facebook: refactored for future inline images
James Geboski <jgeboski@gmail.com>
parents: 37359
diff changeset
273 /**
6545b86a0705 facebook: refactored for future inline images
James Geboski <jgeboski@gmail.com>
parents: 37359
diff changeset
274 * fb_data_image_get_image:
6545b86a0705 facebook: refactored for future inline images
James Geboski <jgeboski@gmail.com>
parents: 37359
diff changeset
275 * @img: The #FbDataImage.
6545b86a0705 facebook: refactored for future inline images
James Geboski <jgeboski@gmail.com>
parents: 37359
diff changeset
276 * @size: The return location for the image size or #NULL.
6545b86a0705 facebook: refactored for future inline images
James Geboski <jgeboski@gmail.com>
parents: 37359
diff changeset
277 *
6545b86a0705 facebook: refactored for future inline images
James Geboski <jgeboski@gmail.com>
parents: 37359
diff changeset
278 * Gets the image data from the #FbDataImage.
6545b86a0705 facebook: refactored for future inline images
James Geboski <jgeboski@gmail.com>
parents: 37359
diff changeset
279 *
6545b86a0705 facebook: refactored for future inline images
James Geboski <jgeboski@gmail.com>
parents: 37359
diff changeset
280 * Returns: The image data.
6545b86a0705 facebook: refactored for future inline images
James Geboski <jgeboski@gmail.com>
parents: 37359
diff changeset
281 */
6545b86a0705 facebook: refactored for future inline images
James Geboski <jgeboski@gmail.com>
parents: 37359
diff changeset
282 const guint8 *
6545b86a0705 facebook: refactored for future inline images
James Geboski <jgeboski@gmail.com>
parents: 37359
diff changeset
283 fb_data_image_get_image(FbDataImage *img, gsize *size);
37276
853fadf2e250 facebook: queue icon downloads to prevent lag
James Geboski <jgeboski@gmail.com>
parents: 37265
diff changeset
284
37347
34d43f8c10d1 facebook: added GTK-Doc for the internal APIs
James Geboski <jgeboski@gmail.com>
parents: 37343
diff changeset
285 /**
37361
6545b86a0705 facebook: refactored for future inline images
James Geboski <jgeboski@gmail.com>
parents: 37359
diff changeset
286 * fb_data_image_dup_image:
6545b86a0705 facebook: refactored for future inline images
James Geboski <jgeboski@gmail.com>
parents: 37359
diff changeset
287 * @img: The #FbDataImage.
6545b86a0705 facebook: refactored for future inline images
James Geboski <jgeboski@gmail.com>
parents: 37359
diff changeset
288 * @size: The return location for the image size or #NULL.
6545b86a0705 facebook: refactored for future inline images
James Geboski <jgeboski@gmail.com>
parents: 37359
diff changeset
289 *
6545b86a0705 facebook: refactored for future inline images
James Geboski <jgeboski@gmail.com>
parents: 37359
diff changeset
290 * Gets the duplicated image data from the #FbDataImage. The returned
6545b86a0705 facebook: refactored for future inline images
James Geboski <jgeboski@gmail.com>
parents: 37359
diff changeset
291 * data should be freed with #g_free() when no longer needed.
6545b86a0705 facebook: refactored for future inline images
James Geboski <jgeboski@gmail.com>
parents: 37359
diff changeset
292 *
6545b86a0705 facebook: refactored for future inline images
James Geboski <jgeboski@gmail.com>
parents: 37359
diff changeset
293 * Returns: The duplicated image data.
6545b86a0705 facebook: refactored for future inline images
James Geboski <jgeboski@gmail.com>
parents: 37359
diff changeset
294 */
6545b86a0705 facebook: refactored for future inline images
James Geboski <jgeboski@gmail.com>
parents: 37359
diff changeset
295 guint8 *
6545b86a0705 facebook: refactored for future inline images
James Geboski <jgeboski@gmail.com>
parents: 37359
diff changeset
296 fb_data_image_dup_image(FbDataImage *img, gsize *size);
6545b86a0705 facebook: refactored for future inline images
James Geboski <jgeboski@gmail.com>
parents: 37359
diff changeset
297
6545b86a0705 facebook: refactored for future inline images
James Geboski <jgeboski@gmail.com>
parents: 37359
diff changeset
298 /**
6545b86a0705 facebook: refactored for future inline images
James Geboski <jgeboski@gmail.com>
parents: 37359
diff changeset
299 * fb_data_image_get_url:
6545b86a0705 facebook: refactored for future inline images
James Geboski <jgeboski@gmail.com>
parents: 37359
diff changeset
300 * @img: The #FbDataImage.
6545b86a0705 facebook: refactored for future inline images
James Geboski <jgeboski@gmail.com>
parents: 37359
diff changeset
301 *
6545b86a0705 facebook: refactored for future inline images
James Geboski <jgeboski@gmail.com>
parents: 37359
diff changeset
302 * Gets the image URL from the #FbDataImage.
6545b86a0705 facebook: refactored for future inline images
James Geboski <jgeboski@gmail.com>
parents: 37359
diff changeset
303 *
6545b86a0705 facebook: refactored for future inline images
James Geboski <jgeboski@gmail.com>
parents: 37359
diff changeset
304 * Returns: The image URL.
6545b86a0705 facebook: refactored for future inline images
James Geboski <jgeboski@gmail.com>
parents: 37359
diff changeset
305 */
6545b86a0705 facebook: refactored for future inline images
James Geboski <jgeboski@gmail.com>
parents: 37359
diff changeset
306 const gchar *
6545b86a0705 facebook: refactored for future inline images
James Geboski <jgeboski@gmail.com>
parents: 37359
diff changeset
307 fb_data_image_get_url(FbDataImage *img);
6545b86a0705 facebook: refactored for future inline images
James Geboski <jgeboski@gmail.com>
parents: 37359
diff changeset
308
6545b86a0705 facebook: refactored for future inline images
James Geboski <jgeboski@gmail.com>
parents: 37359
diff changeset
309 /**
6545b86a0705 facebook: refactored for future inline images
James Geboski <jgeboski@gmail.com>
parents: 37359
diff changeset
310 * fb_data_image_queue:
37347
34d43f8c10d1 facebook: added GTK-Doc for the internal APIs
James Geboski <jgeboski@gmail.com>
parents: 37343
diff changeset
311 * @fata: The #FbData.
34d43f8c10d1 facebook: added GTK-Doc for the internal APIs
James Geboski <jgeboski@gmail.com>
parents: 37343
diff changeset
312 *
37361
6545b86a0705 facebook: refactored for future inline images
James Geboski <jgeboski@gmail.com>
parents: 37359
diff changeset
313 * Queues the next #FbDataImage fetches.
37347
34d43f8c10d1 facebook: added GTK-Doc for the internal APIs
James Geboski <jgeboski@gmail.com>
parents: 37343
diff changeset
314 */
37276
853fadf2e250 facebook: queue icon downloads to prevent lag
James Geboski <jgeboski@gmail.com>
parents: 37265
diff changeset
315 void
37361
6545b86a0705 facebook: refactored for future inline images
James Geboski <jgeboski@gmail.com>
parents: 37359
diff changeset
316 fb_data_image_queue(FbData *fata);
37276
853fadf2e250 facebook: queue icon downloads to prevent lag
James Geboski <jgeboski@gmail.com>
parents: 37265
diff changeset
317
39819
3554dac2991b Standardize all protocol header guard macros.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents: 39550
diff changeset
318 #endif /* PURPLE_FACEBOOK_DATA_H */

mercurial