libpurple/imgstore.h

Sat, 05 Apr 2014 03:12:23 +0200

author
Tomasz Wasilczyk <twasilczyk@pidgin.im>
date
Sat, 05 Apr 2014 03:12:23 +0200
changeset 35766
f29bb25cfbd8
parent 35750
db721872a325
child 35806
49018c6bf755
child 37133
832cd077145e
permissions
-rw-r--r--

Smileys: fill comments for old files

20147
66f05a854eee applied changes from 8a731bbd0197fbcc91a705c2d8f528154216defa
Richard Laager <rlaager@pidgin.im>
parents: 19859
diff changeset
1 /* purple
6982
12f08de92674 [gaim-migrate @ 7538]
Mark Doliner <markdoliner@pidgin.im>
parents:
diff changeset
2 *
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
3 * Purple is the legal property of its developers, whose names are too numerous
8046
c581b20a47d6 [gaim-migrate @ 8730]
Sean Egan <seanegan@pidgin.im>
parents: 7118
diff changeset
4 * to list here. Please refer to the COPYRIGHT file distributed with this
c581b20a47d6 [gaim-migrate @ 8730]
Sean Egan <seanegan@pidgin.im>
parents: 7118
diff changeset
5 * source distribution.
6982
12f08de92674 [gaim-migrate @ 7538]
Mark Doliner <markdoliner@pidgin.im>
parents:
diff changeset
6 *
12f08de92674 [gaim-migrate @ 7538]
Mark Doliner <markdoliner@pidgin.im>
parents:
diff changeset
7 * This program is free software; you can redistribute it and/or modify
12f08de92674 [gaim-migrate @ 7538]
Mark Doliner <markdoliner@pidgin.im>
parents:
diff changeset
8 * it under the terms of the GNU General Public License as published by
12f08de92674 [gaim-migrate @ 7538]
Mark Doliner <markdoliner@pidgin.im>
parents:
diff changeset
9 * the Free Software Foundation; either version 2 of the License, or
12f08de92674 [gaim-migrate @ 7538]
Mark Doliner <markdoliner@pidgin.im>
parents:
diff changeset
10 * (at your option) any later version.
12f08de92674 [gaim-migrate @ 7538]
Mark Doliner <markdoliner@pidgin.im>
parents:
diff changeset
11 *
12f08de92674 [gaim-migrate @ 7538]
Mark Doliner <markdoliner@pidgin.im>
parents:
diff changeset
12 * This program is distributed in the hope that it will be useful,
12f08de92674 [gaim-migrate @ 7538]
Mark Doliner <markdoliner@pidgin.im>
parents:
diff changeset
13 * but WITHOUT ANY WARRANTY; without even the implied warranty of
12f08de92674 [gaim-migrate @ 7538]
Mark Doliner <markdoliner@pidgin.im>
parents:
diff changeset
14 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
12f08de92674 [gaim-migrate @ 7538]
Mark Doliner <markdoliner@pidgin.im>
parents:
diff changeset
15 * GNU General Public License for more details.
12f08de92674 [gaim-migrate @ 7538]
Mark Doliner <markdoliner@pidgin.im>
parents:
diff changeset
16 *
12f08de92674 [gaim-migrate @ 7538]
Mark Doliner <markdoliner@pidgin.im>
parents:
diff changeset
17 * You should have received a copy of the GNU General Public License
12f08de92674 [gaim-migrate @ 7538]
Mark Doliner <markdoliner@pidgin.im>
parents:
diff changeset
18 * 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: 18412
diff changeset
19 * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02111-1301 USA
6982
12f08de92674 [gaim-migrate @ 7538]
Mark Doliner <markdoliner@pidgin.im>
parents:
diff changeset
20 */
35487
494f09f7f331 Move section blocks inside inclusion guards -- otherwise g-ir-scanner yells
Ankit Vani <a@nevitus.org>
parents: 35462
diff changeset
21
494f09f7f331 Move section blocks inside inclusion guards -- otherwise g-ir-scanner yells
Ankit Vani <a@nevitus.org>
parents: 35462
diff changeset
22 #ifndef _PURPLE_IMGSTORE_H_
494f09f7f331 Move section blocks inside inclusion guards -- otherwise g-ir-scanner yells
Ankit Vani <a@nevitus.org>
parents: 35462
diff changeset
23 #define _PURPLE_IMGSTORE_H_
35440
467bb21b82a1 Add section blocks for debug.h to prpl.h
Ankit Vani <a@nevitus.org>
parents: 35397
diff changeset
24 /**
467bb21b82a1 Add section blocks for debug.h to prpl.h
Ankit Vani <a@nevitus.org>
parents: 35397
diff changeset
25 * SECTION:imgstore
467bb21b82a1 Add section blocks for debug.h to prpl.h
Ankit Vani <a@nevitus.org>
parents: 35397
diff changeset
26 * @section_id: libpurple-imgstore
467bb21b82a1 Add section blocks for debug.h to prpl.h
Ankit Vani <a@nevitus.org>
parents: 35397
diff changeset
27 * @short_description: <filename>imgstore.h</filename>
35444
a4ece5a5565a Use upper-case first letters
Ankit Vani <a@nevitus.org>
parents: 35440
diff changeset
28 * @title: In-memory Image data Utility functions
35440
467bb21b82a1 Add section blocks for debug.h to prpl.h
Ankit Vani <a@nevitus.org>
parents: 35397
diff changeset
29 * @see_also: <link linkend="chapter-signals-imgstore">Stored Image signals</link>
467bb21b82a1 Add section blocks for debug.h to prpl.h
Ankit Vani <a@nevitus.org>
parents: 35397
diff changeset
30 *
467bb21b82a1 Add section blocks for debug.h to prpl.h
Ankit Vani <a@nevitus.org>
parents: 35397
diff changeset
31 * This file contains utility functions for reference-counted in-memory image
467bb21b82a1 Add section blocks for debug.h to prpl.h
Ankit Vani <a@nevitus.org>
parents: 35397
diff changeset
32 * data.
467bb21b82a1 Add section blocks for debug.h to prpl.h
Ankit Vani <a@nevitus.org>
parents: 35397
diff changeset
33 */
467bb21b82a1 Add section blocks for debug.h to prpl.h
Ankit Vani <a@nevitus.org>
parents: 35397
diff changeset
34
16538
c7e61e2917c9 Updates for the account buddy icon stuff. This doesn't yet work fully (and maybe not even partly), but it compiles.
Richard Laager <rlaager@pidgin.im>
parents: 16437
diff changeset
35 #include <glib.h>
35744
34964f8d43fe Remote smileys: initial implementation
Tomasz Wasilczyk <twasilczyk@pidgin.im>
parents: 35727
diff changeset
36 #include <glib-object.h>
16538
c7e61e2917c9 Updates for the account buddy icon stuff. This doesn't yet work fully (and maybe not even partly), but it compiles.
Richard Laager <rlaager@pidgin.im>
parents: 16437
diff changeset
37
33052
df92c3d93904 From now on, prpls must specify images using SRC instead of ID.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents: 32787
diff changeset
38 #define PURPLE_STORED_IMAGE_PROTOCOL "purple-image:"
34490
4825e8b34919 E2EE: implement PURPLE_STOCK_IMAGE_PROTOCOL
Tomasz Wasilczyk <twasilczyk@pidgin.im>
parents: 33661
diff changeset
39 #define PURPLE_STOCK_IMAGE_PROTOCOL "purple-stock-image:"
33052
df92c3d93904 From now on, prpls must specify images using SRC instead of ID.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents: 32787
diff changeset
40
35397
31fa3a1aeff5 Move changes from soc.2013.gobjectification.gtkdoc to this branch
Ankit Vani <a@nevitus.org>
parents: 35393
diff changeset
41 /**
31fa3a1aeff5 Move changes from soc.2013.gobjectification.gtkdoc to this branch
Ankit Vani <a@nevitus.org>
parents: 35393
diff changeset
42 * PurpleStoredImage:
31fa3a1aeff5 Move changes from soc.2013.gobjectification.gtkdoc to this branch
Ankit Vani <a@nevitus.org>
parents: 35393
diff changeset
43 *
31fa3a1aeff5 Move changes from soc.2013.gobjectification.gtkdoc to this branch
Ankit Vani <a@nevitus.org>
parents: 35393
diff changeset
44 * A reference-counted immutable wrapper around an image's data and its
31fa3a1aeff5 Move changes from soc.2013.gobjectification.gtkdoc to this branch
Ankit Vani <a@nevitus.org>
parents: 35393
diff changeset
45 * filename.
22613
1077236bf4fb Add docs to PurpleStoredImage so that doxygen links to it show up
Will Thompson <resiak@pidgin.im>
parents: 20889
diff changeset
46 */
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
47 typedef struct _PurpleStoredImage PurpleStoredImage;
6982
12f08de92674 [gaim-migrate @ 7538]
Mark Doliner <markdoliner@pidgin.im>
parents:
diff changeset
48
35715
2aa79f05247e Custom smileys storage
Tomasz Wasilczyk <twasilczyk@pidgin.im>
parents: 35487
diff changeset
49 #define PURPLE_TYPE_STORED_IMAGE (purple_imgstore_get_type())
35766
f29bb25cfbd8 Smileys: fill comments for old files
Tomasz Wasilczyk <twasilczyk@pidgin.im>
parents: 35750
diff changeset
50
f29bb25cfbd8 Smileys: fill comments for old files
Tomasz Wasilczyk <twasilczyk@pidgin.im>
parents: 35750
diff changeset
51 /* TODO: make it a real GObject */
35727
9025074cda55 Smiley manager: saving smileys
Tomasz Wasilczyk <twasilczyk@pidgin.im>
parents: 35715
diff changeset
52 #if 0
35715
2aa79f05247e Custom smileys storage
Tomasz Wasilczyk <twasilczyk@pidgin.im>
parents: 35487
diff changeset
53 #define PURPLE_IS_STORED_IMAGE(image) (G_TYPE_CHECK_INSTANCE_TYPE((image), PURPLE_TYPE_STORED_IMAGE))
35727
9025074cda55 Smiley manager: saving smileys
Tomasz Wasilczyk <twasilczyk@pidgin.im>
parents: 35715
diff changeset
54 #else
9025074cda55 Smiley manager: saving smileys
Tomasz Wasilczyk <twasilczyk@pidgin.im>
parents: 35715
diff changeset
55 #define PURPLE_IS_STORED_IMAGE(image) ((image) != NULL)
9025074cda55 Smiley manager: saving smileys
Tomasz Wasilczyk <twasilczyk@pidgin.im>
parents: 35715
diff changeset
56 #endif
34797
57724af9660d Added temporary GBoxed to PurpleStoredImage
Ankit Vani <a@nevitus.org>
parents: 33661
diff changeset
57
32787
7072f190d6ad Use G_BEGIN/END_DECLS in public libpurple files. This was
Elliott Sales de Andrade <qulogic@pidgin.im>
parents: 32298
diff changeset
58 G_BEGIN_DECLS
6982
12f08de92674 [gaim-migrate @ 7538]
Mark Doliner <markdoliner@pidgin.im>
parents:
diff changeset
59
12f08de92674 [gaim-migrate @ 7538]
Mark Doliner <markdoliner@pidgin.im>
parents:
diff changeset
60 /**
35397
31fa3a1aeff5 Move changes from soc.2013.gobjectification.gtkdoc to this branch
Ankit Vani <a@nevitus.org>
parents: 35393
diff changeset
61 * purple_imgstore_get_type:
31fa3a1aeff5 Move changes from soc.2013.gobjectification.gtkdoc to this branch
Ankit Vani <a@nevitus.org>
parents: 35393
diff changeset
62 *
35462
901dfa763f15 Fix some gtk-doc warnings till proxy.c
Ankit Vani <a@nevitus.org>
parents: 35444
diff changeset
63 * Returns: The #GType for the #PurpleStoredImage boxed structure.
901dfa763f15 Fix some gtk-doc warnings till proxy.c
Ankit Vani <a@nevitus.org>
parents: 35444
diff changeset
64 */
901dfa763f15 Fix some gtk-doc warnings till proxy.c
Ankit Vani <a@nevitus.org>
parents: 35444
diff changeset
65 /* TODO Boxing of PurpleStoredImage is a temporary solution to having a GType
34797
57724af9660d Added temporary GBoxed to PurpleStoredImage
Ankit Vani <a@nevitus.org>
parents: 33661
diff changeset
66 * for stored images. This should rather be a GObject instead of a GBoxed.
57724af9660d Added temporary GBoxed to PurpleStoredImage
Ankit Vani <a@nevitus.org>
parents: 33661
diff changeset
67 */
57724af9660d Added temporary GBoxed to PurpleStoredImage
Ankit Vani <a@nevitus.org>
parents: 33661
diff changeset
68 GType purple_imgstore_get_type(void);
57724af9660d Added temporary GBoxed to PurpleStoredImage
Ankit Vani <a@nevitus.org>
parents: 33661
diff changeset
69
57724af9660d Added temporary GBoxed to PurpleStoredImage
Ankit Vani <a@nevitus.org>
parents: 33661
diff changeset
70 /**
35397
31fa3a1aeff5 Move changes from soc.2013.gobjectification.gtkdoc to this branch
Ankit Vani <a@nevitus.org>
parents: 35393
diff changeset
71 * purple_imgstore_new:
35393
00f876b129bc Initial replacements for gtk-doc style comments
Ankit Vani <a@nevitus.org>
parents: 35047
diff changeset
72 * @data: Pointer to the image data, which the imgstore will take
33654
cf6979b92221 Spaces instead of tabs in doxygen comments.
Mark Doliner <mark@kingant.net>
parents: 22895
diff changeset
73 * ownership of and free as appropriate. If you want a
cf6979b92221 Spaces instead of tabs in doxygen comments.
Mark Doliner <mark@kingant.net>
parents: 22895
diff changeset
74 * copy of the data, make it before calling this function.
35393
00f876b129bc Initial replacements for gtk-doc style comments
Ankit Vani <a@nevitus.org>
parents: 35047
diff changeset
75 * @size: Image data's size.
00f876b129bc Initial replacements for gtk-doc style comments
Ankit Vani <a@nevitus.org>
parents: 35047
diff changeset
76 * @filename: Filename associated with image. This is for your
22763
6e4bbebdf127 Better documentation.
Mark Doliner <markdoliner@pidgin.im>
parents: 22613
diff changeset
77 * convenience. It could be the full path to the
6e4bbebdf127 Better documentation.
Mark Doliner <markdoliner@pidgin.im>
parents: 22613
diff changeset
78 * image or, more commonly, the filename of the image
6e4bbebdf127 Better documentation.
Mark Doliner <markdoliner@pidgin.im>
parents: 22613
diff changeset
79 * without any directory information. It can also be
6e4bbebdf127 Better documentation.
Mark Doliner <markdoliner@pidgin.im>
parents: 22613
diff changeset
80 * NULL, if you don't need to keep track of a filename.
33660
632df42123db Implore people to escape filenames.
Mark Doliner <mark@kingant.net>
parents: 33659
diff changeset
81 * If you intend to use this filename to write the file to
632df42123db Implore people to escape filenames.
Mark Doliner <mark@kingant.net>
parents: 33659
diff changeset
82 * disk, make sure the filename is appropriately escaped.
632df42123db Implore people to escape filenames.
Mark Doliner <mark@kingant.net>
parents: 33659
diff changeset
83 * You may wish to use purple_escape_filename().
16437
7ff7c3405ea2 Rework the buddy icon subsystem to use the imgstore subsystem, and modify the
Richard Laager <rlaager@pidgin.im>
parents: 15884
diff changeset
84 *
35397
31fa3a1aeff5 Move changes from soc.2013.gobjectification.gtkdoc to this branch
Ankit Vani <a@nevitus.org>
parents: 35393
diff changeset
85 * Create a new PurpleStoredImage.
31fa3a1aeff5 Move changes from soc.2013.gobjectification.gtkdoc to this branch
Ankit Vani <a@nevitus.org>
parents: 35393
diff changeset
86 *
31fa3a1aeff5 Move changes from soc.2013.gobjectification.gtkdoc to this branch
Ankit Vani <a@nevitus.org>
parents: 35393
diff changeset
87 * The image is not added to the image store and no ID is assigned. If you
31fa3a1aeff5 Move changes from soc.2013.gobjectification.gtkdoc to this branch
Ankit Vani <a@nevitus.org>
parents: 35393
diff changeset
88 * need to reference the image by an ID, use purple_imgstore_new_with_id()
31fa3a1aeff5 Move changes from soc.2013.gobjectification.gtkdoc to this branch
Ankit Vani <a@nevitus.org>
parents: 35393
diff changeset
89 * instead.
31fa3a1aeff5 Move changes from soc.2013.gobjectification.gtkdoc to this branch
Ankit Vani <a@nevitus.org>
parents: 35393
diff changeset
90 *
31fa3a1aeff5 Move changes from soc.2013.gobjectification.gtkdoc to this branch
Ankit Vani <a@nevitus.org>
parents: 35393
diff changeset
91 * The caller owns a reference to this image and must dereference it with
31fa3a1aeff5 Move changes from soc.2013.gobjectification.gtkdoc to this branch
Ankit Vani <a@nevitus.org>
parents: 35393
diff changeset
92 * purple_imgstore_unref() for it to be freed.
31fa3a1aeff5 Move changes from soc.2013.gobjectification.gtkdoc to this branch
Ankit Vani <a@nevitus.org>
parents: 35393
diff changeset
93 *
35393
00f876b129bc Initial replacements for gtk-doc style comments
Ankit Vani <a@nevitus.org>
parents: 35047
diff changeset
94 * Returns: The image, or NULL if the image could not be created (because of
33656
d09413e12a04 Better documentation.
Mark Doliner <mark@kingant.net>
parents: 33655
diff changeset
95 * empty data or size).
16437
7ff7c3405ea2 Rework the buddy icon subsystem to use the imgstore subsystem, and modify the
Richard Laager <rlaager@pidgin.im>
parents: 15884
diff changeset
96 */
7ff7c3405ea2 Rework the buddy icon subsystem to use the imgstore subsystem, and modify the
Richard Laager <rlaager@pidgin.im>
parents: 15884
diff changeset
97 PurpleStoredImage *
33661
2ebcb105e606 Rename two functions.
Mark Doliner <mark@kingant.net>
parents: 33660
diff changeset
98 purple_imgstore_new(gpointer data, size_t size, const char *filename);
16437
7ff7c3405ea2 Rework the buddy icon subsystem to use the imgstore subsystem, and modify the
Richard Laager <rlaager@pidgin.im>
parents: 15884
diff changeset
99
7ff7c3405ea2 Rework the buddy icon subsystem to use the imgstore subsystem, and modify the
Richard Laager <rlaager@pidgin.im>
parents: 15884
diff changeset
100 /**
35397
31fa3a1aeff5 Move changes from soc.2013.gobjectification.gtkdoc to this branch
Ankit Vani <a@nevitus.org>
parents: 35393
diff changeset
101 * purple_imgstore_new_from_file:
31fa3a1aeff5 Move changes from soc.2013.gobjectification.gtkdoc to this branch
Ankit Vani <a@nevitus.org>
parents: 35393
diff changeset
102 * @path: The path to the image.
31fa3a1aeff5 Move changes from soc.2013.gobjectification.gtkdoc to this branch
Ankit Vani <a@nevitus.org>
parents: 35393
diff changeset
103 *
33661
2ebcb105e606 Rename two functions.
Mark Doliner <mark@kingant.net>
parents: 33660
diff changeset
104 * Create a PurpleStoredImage using purple_imgstore_new() by reading the
33656
d09413e12a04 Better documentation.
Mark Doliner <mark@kingant.net>
parents: 33655
diff changeset
105 * given filename from disk.
d09413e12a04 Better documentation.
Mark Doliner <mark@kingant.net>
parents: 33655
diff changeset
106 *
33658
bf6e40d37a72 Ever better documentation!
Mark Doliner <mark@kingant.net>
parents: 33656
diff changeset
107 * The image is not added to the image store and no ID is assigned. If you
33661
2ebcb105e606 Rename two functions.
Mark Doliner <mark@kingant.net>
parents: 33660
diff changeset
108 * need to reference the image by an ID, use purple_imgstore_new_with_id()
33658
bf6e40d37a72 Ever better documentation!
Mark Doliner <mark@kingant.net>
parents: 33656
diff changeset
109 * instead.
bf6e40d37a72 Ever better documentation!
Mark Doliner <mark@kingant.net>
parents: 33656
diff changeset
110 *
33659
f84e542b30ea Merge from 2.x.y again.
Mark Doliner <mark@kingant.net>
parents: 33657 33658
diff changeset
111 * Make sure the filename is appropriately escaped. You may wish to use
f84e542b30ea Merge from 2.x.y again.
Mark Doliner <mark@kingant.net>
parents: 33657 33658
diff changeset
112 * purple_escape_filename(). The PurpleStoredImage's filename will be set
f84e542b30ea Merge from 2.x.y again.
Mark Doliner <mark@kingant.net>
parents: 33657 33658
diff changeset
113 * to the given path.
f84e542b30ea Merge from 2.x.y again.
Mark Doliner <mark@kingant.net>
parents: 33657 33658
diff changeset
114 *
33658
bf6e40d37a72 Ever better documentation!
Mark Doliner <mark@kingant.net>
parents: 33656
diff changeset
115 * The caller owns a reference to this image and must dereference it with
bf6e40d37a72 Ever better documentation!
Mark Doliner <mark@kingant.net>
parents: 33656
diff changeset
116 * purple_imgstore_unref() for it to be freed.
22652
ba50c2bc1adc Make it simple to create a stored-image from a filename.
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 20889
diff changeset
117 *
35393
00f876b129bc Initial replacements for gtk-doc style comments
Ankit Vani <a@nevitus.org>
parents: 35047
diff changeset
118 * Returns: The image, or NULL if the image could not be created (because of
33656
d09413e12a04 Better documentation.
Mark Doliner <mark@kingant.net>
parents: 33655
diff changeset
119 * empty data or size).
22652
ba50c2bc1adc Make it simple to create a stored-image from a filename.
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 20889
diff changeset
120 */
ba50c2bc1adc Make it simple to create a stored-image from a filename.
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 20889
diff changeset
121 PurpleStoredImage *
ba50c2bc1adc Make it simple to create a stored-image from a filename.
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 20889
diff changeset
122 purple_imgstore_new_from_file(const char *path);
ba50c2bc1adc Make it simple to create a stored-image from a filename.
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 20889
diff changeset
123
ba50c2bc1adc Make it simple to create a stored-image from a filename.
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 20889
diff changeset
124 /**
35397
31fa3a1aeff5 Move changes from soc.2013.gobjectification.gtkdoc to this branch
Ankit Vani <a@nevitus.org>
parents: 35393
diff changeset
125 * purple_imgstore_new_with_id:
35393
00f876b129bc Initial replacements for gtk-doc style comments
Ankit Vani <a@nevitus.org>
parents: 35047
diff changeset
126 * @data: Pointer to the image data, which the imgstore will take
33654
cf6979b92221 Spaces instead of tabs in doxygen comments.
Mark Doliner <mark@kingant.net>
parents: 22895
diff changeset
127 * ownership of and free as appropriate. If you want a
cf6979b92221 Spaces instead of tabs in doxygen comments.
Mark Doliner <mark@kingant.net>
parents: 22895
diff changeset
128 * copy of the data, make it before calling this function.
35393
00f876b129bc Initial replacements for gtk-doc style comments
Ankit Vani <a@nevitus.org>
parents: 35047
diff changeset
129 * @size: Image data's size.
00f876b129bc Initial replacements for gtk-doc style comments
Ankit Vani <a@nevitus.org>
parents: 35047
diff changeset
130 * @filename: Filename associated with image. This is for your
22763
6e4bbebdf127 Better documentation.
Mark Doliner <markdoliner@pidgin.im>
parents: 22613
diff changeset
131 * convenience. It could be the full path to the
6e4bbebdf127 Better documentation.
Mark Doliner <markdoliner@pidgin.im>
parents: 22613
diff changeset
132 * image or, more commonly, the filename of the image
6e4bbebdf127 Better documentation.
Mark Doliner <markdoliner@pidgin.im>
parents: 22613
diff changeset
133 * without any directory information. It can also be
6e4bbebdf127 Better documentation.
Mark Doliner <markdoliner@pidgin.im>
parents: 22613
diff changeset
134 * NULL, if you don't need to keep track of a filename.
33660
632df42123db Implore people to escape filenames.
Mark Doliner <mark@kingant.net>
parents: 33659
diff changeset
135 * If you intend to use this filename to write the file to
632df42123db Implore people to escape filenames.
Mark Doliner <mark@kingant.net>
parents: 33659
diff changeset
136 * disk, make sure the filename is appropriately escaped.
632df42123db Implore people to escape filenames.
Mark Doliner <mark@kingant.net>
parents: 33659
diff changeset
137 * You may wish to use purple_escape_filename()
632df42123db Implore people to escape filenames.
Mark Doliner <mark@kingant.net>
parents: 33659
diff changeset
138 *
35397
31fa3a1aeff5 Move changes from soc.2013.gobjectification.gtkdoc to this branch
Ankit Vani <a@nevitus.org>
parents: 35393
diff changeset
139 * Create a PurpleStoredImage using purple_imgstore_new() and add the
31fa3a1aeff5 Move changes from soc.2013.gobjectification.gtkdoc to this branch
Ankit Vani <a@nevitus.org>
parents: 35393
diff changeset
140 * image to the image store. A unique ID will be assigned to the image.
31fa3a1aeff5 Move changes from soc.2013.gobjectification.gtkdoc to this branch
Ankit Vani <a@nevitus.org>
parents: 35393
diff changeset
141 *
31fa3a1aeff5 Move changes from soc.2013.gobjectification.gtkdoc to this branch
Ankit Vani <a@nevitus.org>
parents: 35393
diff changeset
142 * The caller owns a reference to the image and must dereference it with
31fa3a1aeff5 Move changes from soc.2013.gobjectification.gtkdoc to this branch
Ankit Vani <a@nevitus.org>
parents: 35393
diff changeset
143 * purple_imgstore_unref() or purple_imgstore_unref_by_id() for it to be
31fa3a1aeff5 Move changes from soc.2013.gobjectification.gtkdoc to this branch
Ankit Vani <a@nevitus.org>
parents: 35393
diff changeset
144 * freed.
31fa3a1aeff5 Move changes from soc.2013.gobjectification.gtkdoc to this branch
Ankit Vani <a@nevitus.org>
parents: 35393
diff changeset
145 *
35393
00f876b129bc Initial replacements for gtk-doc style comments
Ankit Vani <a@nevitus.org>
parents: 35047
diff changeset
146 * Returns: ID for the image. This is a unique number that can be used
33655
732c94e8b7ec Document the error condition.
Mark Doliner <mark@kingant.net>
parents: 33654
diff changeset
147 * within libpurple to reference the image. 0 is returned if the
33661
2ebcb105e606 Rename two functions.
Mark Doliner <mark@kingant.net>
parents: 33660
diff changeset
148 * image could not be created (because of empty data or size).
6982
12f08de92674 [gaim-migrate @ 7538]
Mark Doliner <markdoliner@pidgin.im>
parents:
diff changeset
149 */
33661
2ebcb105e606 Rename two functions.
Mark Doliner <mark@kingant.net>
parents: 33660
diff changeset
150 int purple_imgstore_new_with_id(gpointer data, size_t size, const char *filename);
6982
12f08de92674 [gaim-migrate @ 7538]
Mark Doliner <markdoliner@pidgin.im>
parents:
diff changeset
151
35766
f29bb25cfbd8 Smileys: fill comments for old files
Tomasz Wasilczyk <twasilczyk@pidgin.im>
parents: 35750
diff changeset
152 /**
f29bb25cfbd8 Smileys: fill comments for old files
Tomasz Wasilczyk <twasilczyk@pidgin.im>
parents: 35750
diff changeset
153 * purple_imgstore_add_with_id:
f29bb25cfbd8 Smileys: fill comments for old files
Tomasz Wasilczyk <twasilczyk@pidgin.im>
parents: 35750
diff changeset
154 * @image: The image.
f29bb25cfbd8 Smileys: fill comments for old files
Tomasz Wasilczyk <twasilczyk@pidgin.im>
parents: 35750
diff changeset
155 *
f29bb25cfbd8 Smileys: fill comments for old files
Tomasz Wasilczyk <twasilczyk@pidgin.im>
parents: 35750
diff changeset
156 * Adds previously created #PurpleStoredImage to the local store with newly
f29bb25cfbd8 Smileys: fill comments for old files
Tomasz Wasilczyk <twasilczyk@pidgin.im>
parents: 35750
diff changeset
157 * generated id. If it was already in the store, an old id will be returned.
f29bb25cfbd8 Smileys: fill comments for old files
Tomasz Wasilczyk <twasilczyk@pidgin.im>
parents: 35750
diff changeset
158 *
f29bb25cfbd8 Smileys: fill comments for old files
Tomasz Wasilczyk <twasilczyk@pidgin.im>
parents: 35750
diff changeset
159 * Returns: ID for the image.
f29bb25cfbd8 Smileys: fill comments for old files
Tomasz Wasilczyk <twasilczyk@pidgin.im>
parents: 35750
diff changeset
160 */
35750
db721872a325 Remote smileys: display them
Tomasz Wasilczyk <twasilczyk@pidgin.im>
parents: 35744
diff changeset
161 int
db721872a325 Remote smileys: display them
Tomasz Wasilczyk <twasilczyk@pidgin.im>
parents: 35744
diff changeset
162 purple_imgstore_add_with_id(PurpleStoredImage *image);
db721872a325 Remote smileys: display them
Tomasz Wasilczyk <twasilczyk@pidgin.im>
parents: 35744
diff changeset
163
6982
12f08de92674 [gaim-migrate @ 7538]
Mark Doliner <markdoliner@pidgin.im>
parents:
diff changeset
164 /**
35397
31fa3a1aeff5 Move changes from soc.2013.gobjectification.gtkdoc to this branch
Ankit Vani <a@nevitus.org>
parents: 35393
diff changeset
165 * purple_imgstore_find_by_id:
31fa3a1aeff5 Move changes from soc.2013.gobjectification.gtkdoc to this branch
Ankit Vani <a@nevitus.org>
parents: 35393
diff changeset
166 * @id: The ID for the image.
31fa3a1aeff5 Move changes from soc.2013.gobjectification.gtkdoc to this branch
Ankit Vani <a@nevitus.org>
parents: 35393
diff changeset
167 *
6982
12f08de92674 [gaim-migrate @ 7538]
Mark Doliner <markdoliner@pidgin.im>
parents:
diff changeset
168 * Retrieve an image from the store. The caller does not own a
12f08de92674 [gaim-migrate @ 7538]
Mark Doliner <markdoliner@pidgin.im>
parents:
diff changeset
169 * reference to the image.
12f08de92674 [gaim-migrate @ 7538]
Mark Doliner <markdoliner@pidgin.im>
parents:
diff changeset
170 *
35393
00f876b129bc Initial replacements for gtk-doc style comments
Ankit Vani <a@nevitus.org>
parents: 35047
diff changeset
171 * Returns: A pointer to the requested image, or NULL if it was not found.
6982
12f08de92674 [gaim-migrate @ 7538]
Mark Doliner <markdoliner@pidgin.im>
parents:
diff changeset
172 */
16437
7ff7c3405ea2 Rework the buddy icon subsystem to use the imgstore subsystem, and modify the
Richard Laager <rlaager@pidgin.im>
parents: 15884
diff changeset
173 PurpleStoredImage *purple_imgstore_find_by_id(int id);
6982
12f08de92674 [gaim-migrate @ 7538]
Mark Doliner <markdoliner@pidgin.im>
parents:
diff changeset
174
12f08de92674 [gaim-migrate @ 7538]
Mark Doliner <markdoliner@pidgin.im>
parents:
diff changeset
175 /**
35397
31fa3a1aeff5 Move changes from soc.2013.gobjectification.gtkdoc to this branch
Ankit Vani <a@nevitus.org>
parents: 35393
diff changeset
176 * purple_imgstore_get_data:
31fa3a1aeff5 Move changes from soc.2013.gobjectification.gtkdoc to this branch
Ankit Vani <a@nevitus.org>
parents: 35393
diff changeset
177 * @img: The Image.
8962
5cd12e525d95 [gaim-migrate @ 9736]
Tim Ringenbach <marv@pidgin.im>
parents: 8046
diff changeset
178 *
35397
31fa3a1aeff5 Move changes from soc.2013.gobjectification.gtkdoc to this branch
Ankit Vani <a@nevitus.org>
parents: 35393
diff changeset
179 * Retrieves a pointer to the image's data.
8962
5cd12e525d95 [gaim-migrate @ 9736]
Tim Ringenbach <marv@pidgin.im>
parents: 8046
diff changeset
180 *
35393
00f876b129bc Initial replacements for gtk-doc style comments
Ankit Vani <a@nevitus.org>
parents: 35047
diff changeset
181 * Returns: A pointer to the data, which must not
8962
5cd12e525d95 [gaim-migrate @ 9736]
Tim Ringenbach <marv@pidgin.im>
parents: 8046
diff changeset
182 * be freed or modified.
5cd12e525d95 [gaim-migrate @ 9736]
Tim Ringenbach <marv@pidgin.im>
parents: 8046
diff changeset
183 */
16437
7ff7c3405ea2 Rework the buddy icon subsystem to use the imgstore subsystem, and modify the
Richard Laager <rlaager@pidgin.im>
parents: 15884
diff changeset
184 gconstpointer purple_imgstore_get_data(PurpleStoredImage *img);
8962
5cd12e525d95 [gaim-migrate @ 9736]
Tim Ringenbach <marv@pidgin.im>
parents: 8046
diff changeset
185
5cd12e525d95 [gaim-migrate @ 9736]
Tim Ringenbach <marv@pidgin.im>
parents: 8046
diff changeset
186 /**
35397
31fa3a1aeff5 Move changes from soc.2013.gobjectification.gtkdoc to this branch
Ankit Vani <a@nevitus.org>
parents: 35393
diff changeset
187 * purple_imgstore_get_size:
31fa3a1aeff5 Move changes from soc.2013.gobjectification.gtkdoc to this branch
Ankit Vani <a@nevitus.org>
parents: 35393
diff changeset
188 * @img: The Image.
8962
5cd12e525d95 [gaim-migrate @ 9736]
Tim Ringenbach <marv@pidgin.im>
parents: 8046
diff changeset
189 *
35397
31fa3a1aeff5 Move changes from soc.2013.gobjectification.gtkdoc to this branch
Ankit Vani <a@nevitus.org>
parents: 35393
diff changeset
190 * Retrieves the length of the image's data.
8962
5cd12e525d95 [gaim-migrate @ 9736]
Tim Ringenbach <marv@pidgin.im>
parents: 8046
diff changeset
191 *
35393
00f876b129bc Initial replacements for gtk-doc style comments
Ankit Vani <a@nevitus.org>
parents: 35047
diff changeset
192 * Returns: The size of the data that the pointer returned by
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
193 * purple_imgstore_get_data points to.
8962
5cd12e525d95 [gaim-migrate @ 9736]
Tim Ringenbach <marv@pidgin.im>
parents: 8046
diff changeset
194 */
16599
43f9ca8adbef Fix the name of the parameter for purple_imgstore_get_size() so that Doxygen will stop crying.
Richard Laager <rlaager@pidgin.im>
parents: 16539
diff changeset
195 size_t purple_imgstore_get_size(PurpleStoredImage *img);
8962
5cd12e525d95 [gaim-migrate @ 9736]
Tim Ringenbach <marv@pidgin.im>
parents: 8046
diff changeset
196
5cd12e525d95 [gaim-migrate @ 9736]
Tim Ringenbach <marv@pidgin.im>
parents: 8046
diff changeset
197 /**
35397
31fa3a1aeff5 Move changes from soc.2013.gobjectification.gtkdoc to this branch
Ankit Vani <a@nevitus.org>
parents: 35393
diff changeset
198 * purple_imgstore_get_filename:
31fa3a1aeff5 Move changes from soc.2013.gobjectification.gtkdoc to this branch
Ankit Vani <a@nevitus.org>
parents: 35393
diff changeset
199 * @img: The image.
31fa3a1aeff5 Move changes from soc.2013.gobjectification.gtkdoc to this branch
Ankit Vani <a@nevitus.org>
parents: 35393
diff changeset
200 *
33660
632df42123db Implore people to escape filenames.
Mark Doliner <mark@kingant.net>
parents: 33659
diff changeset
201 * Retrieves a pointer to the image's filename. If you intend to use this
632df42123db Implore people to escape filenames.
Mark Doliner <mark@kingant.net>
parents: 33659
diff changeset
202 * filename to write the file to disk, make sure the filename was
632df42123db Implore people to escape filenames.
Mark Doliner <mark@kingant.net>
parents: 33659
diff changeset
203 * appropriately escaped when you created the PurpleStoredImage. You may
632df42123db Implore people to escape filenames.
Mark Doliner <mark@kingant.net>
parents: 33659
diff changeset
204 * wish to use purple_escape_filename().
8962
5cd12e525d95 [gaim-migrate @ 9736]
Tim Ringenbach <marv@pidgin.im>
parents: 8046
diff changeset
205 *
35393
00f876b129bc Initial replacements for gtk-doc style comments
Ankit Vani <a@nevitus.org>
parents: 35047
diff changeset
206 * Returns: A pointer to the filename, which must not
8962
5cd12e525d95 [gaim-migrate @ 9736]
Tim Ringenbach <marv@pidgin.im>
parents: 8046
diff changeset
207 * be freed or modified.
5cd12e525d95 [gaim-migrate @ 9736]
Tim Ringenbach <marv@pidgin.im>
parents: 8046
diff changeset
208 */
16775
8627d2560d40 Get rid of two harmless warnings:
Mark Doliner <markdoliner@pidgin.im>
parents: 16599
diff changeset
209 const char *purple_imgstore_get_filename(const PurpleStoredImage *img);
16437
7ff7c3405ea2 Rework the buddy icon subsystem to use the imgstore subsystem, and modify the
Richard Laager <rlaager@pidgin.im>
parents: 15884
diff changeset
210
7ff7c3405ea2 Rework the buddy icon subsystem to use the imgstore subsystem, and modify the
Richard Laager <rlaager@pidgin.im>
parents: 15884
diff changeset
211 /**
35397
31fa3a1aeff5 Move changes from soc.2013.gobjectification.gtkdoc to this branch
Ankit Vani <a@nevitus.org>
parents: 35393
diff changeset
212 * purple_imgstore_get_extension:
31fa3a1aeff5 Move changes from soc.2013.gobjectification.gtkdoc to this branch
Ankit Vani <a@nevitus.org>
parents: 35393
diff changeset
213 * @img: The image.
31fa3a1aeff5 Move changes from soc.2013.gobjectification.gtkdoc to this branch
Ankit Vani <a@nevitus.org>
parents: 35393
diff changeset
214 *
22763
6e4bbebdf127 Better documentation.
Mark Doliner <markdoliner@pidgin.im>
parents: 22613
diff changeset
215 * Looks at the magic numbers of the image data (the first few bytes)
6e4bbebdf127 Better documentation.
Mark Doliner <markdoliner@pidgin.im>
parents: 22613
diff changeset
216 * and returns an extension corresponding to the image's file type.
16437
7ff7c3405ea2 Rework the buddy icon subsystem to use the imgstore subsystem, and modify the
Richard Laager <rlaager@pidgin.im>
parents: 15884
diff changeset
217 *
35393
00f876b129bc Initial replacements for gtk-doc style comments
Ankit Vani <a@nevitus.org>
parents: 35047
diff changeset
218 * Returns: The image's extension (for example "png") or "icon"
22763
6e4bbebdf127 Better documentation.
Mark Doliner <markdoliner@pidgin.im>
parents: 22613
diff changeset
219 * if unknown.
16437
7ff7c3405ea2 Rework the buddy icon subsystem to use the imgstore subsystem, and modify the
Richard Laager <rlaager@pidgin.im>
parents: 15884
diff changeset
220 */
7ff7c3405ea2 Rework the buddy icon subsystem to use the imgstore subsystem, and modify the
Richard Laager <rlaager@pidgin.im>
parents: 15884
diff changeset
221 const char *purple_imgstore_get_extension(PurpleStoredImage *img);
8962
5cd12e525d95 [gaim-migrate @ 9736]
Tim Ringenbach <marv@pidgin.im>
parents: 8046
diff changeset
222
5cd12e525d95 [gaim-migrate @ 9736]
Tim Ringenbach <marv@pidgin.im>
parents: 8046
diff changeset
223 /**
35397
31fa3a1aeff5 Move changes from soc.2013.gobjectification.gtkdoc to this branch
Ankit Vani <a@nevitus.org>
parents: 35393
diff changeset
224 * purple_imgstore_ref:
31fa3a1aeff5 Move changes from soc.2013.gobjectification.gtkdoc to this branch
Ankit Vani <a@nevitus.org>
parents: 35393
diff changeset
225 * @img: The image.
31fa3a1aeff5 Move changes from soc.2013.gobjectification.gtkdoc to this branch
Ankit Vani <a@nevitus.org>
parents: 35393
diff changeset
226 *
16437
7ff7c3405ea2 Rework the buddy icon subsystem to use the imgstore subsystem, and modify the
Richard Laager <rlaager@pidgin.im>
parents: 15884
diff changeset
227 * Increment the reference count.
7ff7c3405ea2 Rework the buddy icon subsystem to use the imgstore subsystem, and modify the
Richard Laager <rlaager@pidgin.im>
parents: 15884
diff changeset
228 *
35397
31fa3a1aeff5 Move changes from soc.2013.gobjectification.gtkdoc to this branch
Ankit Vani <a@nevitus.org>
parents: 35393
diff changeset
229 * Returns: @img
16437
7ff7c3405ea2 Rework the buddy icon subsystem to use the imgstore subsystem, and modify the
Richard Laager <rlaager@pidgin.im>
parents: 15884
diff changeset
230 */
7ff7c3405ea2 Rework the buddy icon subsystem to use the imgstore subsystem, and modify the
Richard Laager <rlaager@pidgin.im>
parents: 15884
diff changeset
231 PurpleStoredImage *
7ff7c3405ea2 Rework the buddy icon subsystem to use the imgstore subsystem, and modify the
Richard Laager <rlaager@pidgin.im>
parents: 15884
diff changeset
232 purple_imgstore_ref(PurpleStoredImage *img);
7ff7c3405ea2 Rework the buddy icon subsystem to use the imgstore subsystem, and modify the
Richard Laager <rlaager@pidgin.im>
parents: 15884
diff changeset
233
7ff7c3405ea2 Rework the buddy icon subsystem to use the imgstore subsystem, and modify the
Richard Laager <rlaager@pidgin.im>
parents: 15884
diff changeset
234 /**
35397
31fa3a1aeff5 Move changes from soc.2013.gobjectification.gtkdoc to this branch
Ankit Vani <a@nevitus.org>
parents: 35393
diff changeset
235 * purple_imgstore_unref:
31fa3a1aeff5 Move changes from soc.2013.gobjectification.gtkdoc to this branch
Ankit Vani <a@nevitus.org>
parents: 35393
diff changeset
236 * @img: The image.
31fa3a1aeff5 Move changes from soc.2013.gobjectification.gtkdoc to this branch
Ankit Vani <a@nevitus.org>
parents: 35393
diff changeset
237 *
16437
7ff7c3405ea2 Rework the buddy icon subsystem to use the imgstore subsystem, and modify the
Richard Laager <rlaager@pidgin.im>
parents: 15884
diff changeset
238 * Decrement the reference count.
7ff7c3405ea2 Rework the buddy icon subsystem to use the imgstore subsystem, and modify the
Richard Laager <rlaager@pidgin.im>
parents: 15884
diff changeset
239 *
7ff7c3405ea2 Rework the buddy icon subsystem to use the imgstore subsystem, and modify the
Richard Laager <rlaager@pidgin.im>
parents: 15884
diff changeset
240 * If the reference count reaches zero, the image will be freed.
7ff7c3405ea2 Rework the buddy icon subsystem to use the imgstore subsystem, and modify the
Richard Laager <rlaager@pidgin.im>
parents: 15884
diff changeset
241 *
35397
31fa3a1aeff5 Move changes from soc.2013.gobjectification.gtkdoc to this branch
Ankit Vani <a@nevitus.org>
parents: 35393
diff changeset
242 * Returns: @img or %NULL if the reference count reached zero.
16437
7ff7c3405ea2 Rework the buddy icon subsystem to use the imgstore subsystem, and modify the
Richard Laager <rlaager@pidgin.im>
parents: 15884
diff changeset
243 */
7ff7c3405ea2 Rework the buddy icon subsystem to use the imgstore subsystem, and modify the
Richard Laager <rlaager@pidgin.im>
parents: 15884
diff changeset
244 PurpleStoredImage *
7ff7c3405ea2 Rework the buddy icon subsystem to use the imgstore subsystem, and modify the
Richard Laager <rlaager@pidgin.im>
parents: 15884
diff changeset
245 purple_imgstore_unref(PurpleStoredImage *img);
7ff7c3405ea2 Rework the buddy icon subsystem to use the imgstore subsystem, and modify the
Richard Laager <rlaager@pidgin.im>
parents: 15884
diff changeset
246
7ff7c3405ea2 Rework the buddy icon subsystem to use the imgstore subsystem, and modify the
Richard Laager <rlaager@pidgin.im>
parents: 15884
diff changeset
247 /**
35397
31fa3a1aeff5 Move changes from soc.2013.gobjectification.gtkdoc to this branch
Ankit Vani <a@nevitus.org>
parents: 35393
diff changeset
248 * purple_imgstore_ref_by_id:
31fa3a1aeff5 Move changes from soc.2013.gobjectification.gtkdoc to this branch
Ankit Vani <a@nevitus.org>
parents: 35393
diff changeset
249 * @id: The ID for the image.
31fa3a1aeff5 Move changes from soc.2013.gobjectification.gtkdoc to this branch
Ankit Vani <a@nevitus.org>
parents: 35393
diff changeset
250 *
16437
7ff7c3405ea2 Rework the buddy icon subsystem to use the imgstore subsystem, and modify the
Richard Laager <rlaager@pidgin.im>
parents: 15884
diff changeset
251 * Increment the reference count using an ID.
7ff7c3405ea2 Rework the buddy icon subsystem to use the imgstore subsystem, and modify the
Richard Laager <rlaager@pidgin.im>
parents: 15884
diff changeset
252 *
7ff7c3405ea2 Rework the buddy icon subsystem to use the imgstore subsystem, and modify the
Richard Laager <rlaager@pidgin.im>
parents: 15884
diff changeset
253 * This is a convience wrapper for purple_imgstore_find_by_id() and
7ff7c3405ea2 Rework the buddy icon subsystem to use the imgstore subsystem, and modify the
Richard Laager <rlaager@pidgin.im>
parents: 15884
diff changeset
254 * purple_imgstore_ref(), so if you have a PurpleStoredImage, it'll
7ff7c3405ea2 Rework the buddy icon subsystem to use the imgstore subsystem, and modify the
Richard Laager <rlaager@pidgin.im>
parents: 15884
diff changeset
255 * be more efficient to call purple_imgstore_ref() directly.
6982
12f08de92674 [gaim-migrate @ 7538]
Mark Doliner <markdoliner@pidgin.im>
parents:
diff changeset
256 */
16437
7ff7c3405ea2 Rework the buddy icon subsystem to use the imgstore subsystem, and modify the
Richard Laager <rlaager@pidgin.im>
parents: 15884
diff changeset
257 void purple_imgstore_ref_by_id(int id);
6982
12f08de92674 [gaim-migrate @ 7538]
Mark Doliner <markdoliner@pidgin.im>
parents:
diff changeset
258
12f08de92674 [gaim-migrate @ 7538]
Mark Doliner <markdoliner@pidgin.im>
parents:
diff changeset
259 /**
35397
31fa3a1aeff5 Move changes from soc.2013.gobjectification.gtkdoc to this branch
Ankit Vani <a@nevitus.org>
parents: 35393
diff changeset
260 * purple_imgstore_unref_by_id:
31fa3a1aeff5 Move changes from soc.2013.gobjectification.gtkdoc to this branch
Ankit Vani <a@nevitus.org>
parents: 35393
diff changeset
261 * @id: The ID for the image.
31fa3a1aeff5 Move changes from soc.2013.gobjectification.gtkdoc to this branch
Ankit Vani <a@nevitus.org>
parents: 35393
diff changeset
262 *
16437
7ff7c3405ea2 Rework the buddy icon subsystem to use the imgstore subsystem, and modify the
Richard Laager <rlaager@pidgin.im>
parents: 15884
diff changeset
263 * Decrement the reference count using an ID.
7ff7c3405ea2 Rework the buddy icon subsystem to use the imgstore subsystem, and modify the
Richard Laager <rlaager@pidgin.im>
parents: 15884
diff changeset
264 *
7ff7c3405ea2 Rework the buddy icon subsystem to use the imgstore subsystem, and modify the
Richard Laager <rlaager@pidgin.im>
parents: 15884
diff changeset
265 * This is a convience wrapper for purple_imgstore_find_by_id() and
7ff7c3405ea2 Rework the buddy icon subsystem to use the imgstore subsystem, and modify the
Richard Laager <rlaager@pidgin.im>
parents: 15884
diff changeset
266 * purple_imgstore_unref(), so if you have a PurpleStoredImage, it'll
7ff7c3405ea2 Rework the buddy icon subsystem to use the imgstore subsystem, and modify the
Richard Laager <rlaager@pidgin.im>
parents: 15884
diff changeset
267 * be more efficient to call purple_imgstore_unref() directly.
6982
12f08de92674 [gaim-migrate @ 7538]
Mark Doliner <markdoliner@pidgin.im>
parents:
diff changeset
268 */
16437
7ff7c3405ea2 Rework the buddy icon subsystem to use the imgstore subsystem, and modify the
Richard Laager <rlaager@pidgin.im>
parents: 15884
diff changeset
269 void purple_imgstore_unref_by_id(int id);
7ff7c3405ea2 Rework the buddy icon subsystem to use the imgstore subsystem, and modify the
Richard Laager <rlaager@pidgin.im>
parents: 15884
diff changeset
270
7ff7c3405ea2 Rework the buddy icon subsystem to use the imgstore subsystem, and modify the
Richard Laager <rlaager@pidgin.im>
parents: 15884
diff changeset
271 /**
35397
31fa3a1aeff5 Move changes from soc.2013.gobjectification.gtkdoc to this branch
Ankit Vani <a@nevitus.org>
parents: 35393
diff changeset
272 * purple_imgstore_get_handle:
31fa3a1aeff5 Move changes from soc.2013.gobjectification.gtkdoc to this branch
Ankit Vani <a@nevitus.org>
parents: 35393
diff changeset
273 *
16437
7ff7c3405ea2 Rework the buddy icon subsystem to use the imgstore subsystem, and modify the
Richard Laager <rlaager@pidgin.im>
parents: 15884
diff changeset
274 * Returns the image store subsystem handle.
7ff7c3405ea2 Rework the buddy icon subsystem to use the imgstore subsystem, and modify the
Richard Laager <rlaager@pidgin.im>
parents: 15884
diff changeset
275 *
35393
00f876b129bc Initial replacements for gtk-doc style comments
Ankit Vani <a@nevitus.org>
parents: 35047
diff changeset
276 * Returns: The subsystem handle.
16437
7ff7c3405ea2 Rework the buddy icon subsystem to use the imgstore subsystem, and modify the
Richard Laager <rlaager@pidgin.im>
parents: 15884
diff changeset
277 */
7ff7c3405ea2 Rework the buddy icon subsystem to use the imgstore subsystem, and modify the
Richard Laager <rlaager@pidgin.im>
parents: 15884
diff changeset
278 void *purple_imgstore_get_handle(void);
7ff7c3405ea2 Rework the buddy icon subsystem to use the imgstore subsystem, and modify the
Richard Laager <rlaager@pidgin.im>
parents: 15884
diff changeset
279
7ff7c3405ea2 Rework the buddy icon subsystem to use the imgstore subsystem, and modify the
Richard Laager <rlaager@pidgin.im>
parents: 15884
diff changeset
280 /**
35397
31fa3a1aeff5 Move changes from soc.2013.gobjectification.gtkdoc to this branch
Ankit Vani <a@nevitus.org>
parents: 35393
diff changeset
281 * purple_imgstore_init:
31fa3a1aeff5 Move changes from soc.2013.gobjectification.gtkdoc to this branch
Ankit Vani <a@nevitus.org>
parents: 35393
diff changeset
282 *
16437
7ff7c3405ea2 Rework the buddy icon subsystem to use the imgstore subsystem, and modify the
Richard Laager <rlaager@pidgin.im>
parents: 15884
diff changeset
283 * Initializes the image store subsystem.
7ff7c3405ea2 Rework the buddy icon subsystem to use the imgstore subsystem, and modify the
Richard Laager <rlaager@pidgin.im>
parents: 15884
diff changeset
284 */
7ff7c3405ea2 Rework the buddy icon subsystem to use the imgstore subsystem, and modify the
Richard Laager <rlaager@pidgin.im>
parents: 15884
diff changeset
285 void purple_imgstore_init(void);
7ff7c3405ea2 Rework the buddy icon subsystem to use the imgstore subsystem, and modify the
Richard Laager <rlaager@pidgin.im>
parents: 15884
diff changeset
286
7ff7c3405ea2 Rework the buddy icon subsystem to use the imgstore subsystem, and modify the
Richard Laager <rlaager@pidgin.im>
parents: 15884
diff changeset
287 /**
35397
31fa3a1aeff5 Move changes from soc.2013.gobjectification.gtkdoc to this branch
Ankit Vani <a@nevitus.org>
parents: 35393
diff changeset
288 * purple_imgstore_uninit:
31fa3a1aeff5 Move changes from soc.2013.gobjectification.gtkdoc to this branch
Ankit Vani <a@nevitus.org>
parents: 35393
diff changeset
289 *
16437
7ff7c3405ea2 Rework the buddy icon subsystem to use the imgstore subsystem, and modify the
Richard Laager <rlaager@pidgin.im>
parents: 15884
diff changeset
290 * Uninitializes the image store subsystem.
7ff7c3405ea2 Rework the buddy icon subsystem to use the imgstore subsystem, and modify the
Richard Laager <rlaager@pidgin.im>
parents: 15884
diff changeset
291 */
7ff7c3405ea2 Rework the buddy icon subsystem to use the imgstore subsystem, and modify the
Richard Laager <rlaager@pidgin.im>
parents: 15884
diff changeset
292 void purple_imgstore_uninit(void);
6982
12f08de92674 [gaim-migrate @ 7538]
Mark Doliner <markdoliner@pidgin.im>
parents:
diff changeset
293
32787
7072f190d6ad Use G_BEGIN/END_DECLS in public libpurple files. This was
Elliott Sales de Andrade <qulogic@pidgin.im>
parents: 32298
diff changeset
294 G_END_DECLS
6982
12f08de92674 [gaim-migrate @ 7538]
Mark Doliner <markdoliner@pidgin.im>
parents:
diff changeset
295
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
296 #endif /* _PURPLE_IMGSTORE_H_ */

mercurial