libpurple/util.h

Fri, 16 Oct 2020 02:27:21 -0500

author
Gary Kramlich <grim@reaperworld.com>
date
Fri, 16 Oct 2020 02:27:21 -0500
changeset 40564
2c5b4dc2e86a
parent 40560
6af4d993c8e5
child 40584
6f198a69ac48
permissions
-rw-r--r--

Pull the purple_markup_* api out of util.[ch] to purplemarkup.[ch]. No code was changed just moved it from one file to the other.

Testing Done:
Compile and unit tests.

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

20147
66f05a854eee applied changes from 8a731bbd0197fbcc91a705c2d8f528154216defa
Richard Laager <rlaager@pidgin.im>
parents: 19859
diff changeset
1 /* purple
4890
d87a9b5bbe57 [gaim-migrate @ 5220]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
2 *
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15707
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: 7889
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: 7889
diff changeset
5 * source distribution.
7094
8f9588491993 [gaim-migrate @ 7659]
Christian Hammond <chipx86@chipx86.com>
parents: 6982
diff changeset
6 *
4890
d87a9b5bbe57 [gaim-migrate @ 5220]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
7 * This program is free software; you can redistribute it and/or modify
d87a9b5bbe57 [gaim-migrate @ 5220]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
8 * it under the terms of the GNU General Public License as published by
d87a9b5bbe57 [gaim-migrate @ 5220]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
9 * the Free Software Foundation; either version 2 of the License, or
d87a9b5bbe57 [gaim-migrate @ 5220]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
10 * (at your option) any later version.
d87a9b5bbe57 [gaim-migrate @ 5220]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
11 *
d87a9b5bbe57 [gaim-migrate @ 5220]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
12 * This program is distributed in the hope that it will be useful,
d87a9b5bbe57 [gaim-migrate @ 5220]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
13 * but WITHOUT ANY WARRANTY; without even the implied warranty of
d87a9b5bbe57 [gaim-migrate @ 5220]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
14 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
d87a9b5bbe57 [gaim-migrate @ 5220]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
15 * GNU General Public License for more details.
d87a9b5bbe57 [gaim-migrate @ 5220]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
16 *
d87a9b5bbe57 [gaim-migrate @ 5220]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
17 * You should have received a copy of the GNU General Public License
d87a9b5bbe57 [gaim-migrate @ 5220]
Christian Hammond <chipx86@chipx86.com>
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: 19663
diff changeset
19 * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02111-1301 USA
4890
d87a9b5bbe57 [gaim-migrate @ 5220]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
20 *
35473
b5427137c6d0 Remove @todo
Ankit Vani <a@nevitus.org>
parents: 35472
diff changeset
21 * TODO Rename the functions so that they live somewhere in the purple
b5427137c6d0 Remove @todo
Ankit Vani <a@nevitus.org>
parents: 35472
diff changeset
22 * namespace.
4890
d87a9b5bbe57 [gaim-migrate @ 5220]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
23 */
35487
494f09f7f331 Move section blocks inside inclusion guards -- otherwise g-ir-scanner yells
Ankit Vani <a@nevitus.org>
parents: 35486
diff changeset
24
40474
1341be8e3402 Make it so only libpurple can directly include libpurple header files.
Gary Kramlich <grim@reaperworld.com>
parents: 40350
diff changeset
25 #if !defined(PURPLE_GLOBAL_HEADER_INSIDE) && !defined(PURPLE_COMPILATION)
1341be8e3402 Make it so only libpurple can directly include libpurple header files.
Gary Kramlich <grim@reaperworld.com>
parents: 40350
diff changeset
26 # error "only <purple.h> may be included directly"
1341be8e3402 Make it so only libpurple can directly include libpurple header files.
Gary Kramlich <grim@reaperworld.com>
parents: 40350
diff changeset
27 #endif
1341be8e3402 Make it so only libpurple can directly include libpurple header files.
Gary Kramlich <grim@reaperworld.com>
parents: 40350
diff changeset
28
39659
e4dfb99b0cef Fix libpurple header guards using reserved names.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents: 39527
diff changeset
29 #ifndef PURPLE_UTIL_H
e4dfb99b0cef Fix libpurple header guards using reserved names.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents: 39527
diff changeset
30 #define PURPLE_UTIL_H
35442
84e906df98dd Add section blocks for purple-socket.h to xmlnode.h
Ankit Vani <a@nevitus.org>
parents: 35404
diff changeset
31 /**
84e906df98dd Add section blocks for purple-socket.h to xmlnode.h
Ankit Vani <a@nevitus.org>
parents: 35404
diff changeset
32 * SECTION:util
84e906df98dd Add section blocks for purple-socket.h to xmlnode.h
Ankit Vani <a@nevitus.org>
parents: 35404
diff changeset
33 * @section_id: libpurple-util
84e906df98dd Add section blocks for purple-socket.h to xmlnode.h
Ankit Vani <a@nevitus.org>
parents: 35404
diff changeset
34 * @short_description: <filename>util.h</filename>
84e906df98dd Add section blocks for purple-socket.h to xmlnode.h
Ankit Vani <a@nevitus.org>
parents: 35404
diff changeset
35 * @title: Utility Functions
84e906df98dd Add section blocks for purple-socket.h to xmlnode.h
Ankit Vani <a@nevitus.org>
parents: 35404
diff changeset
36 */
4890
d87a9b5bbe57 [gaim-migrate @ 5220]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
37
6474
12d3fe5e5b1b [gaim-migrate @ 6983]
Christian Hammond <chipx86@chipx86.com>
parents: 5944
diff changeset
38 #include <stdio.h>
12d3fe5e5b1b [gaim-migrate @ 6983]
Christian Hammond <chipx86@chipx86.com>
parents: 5944
diff changeset
39
5563
d5a7852aa0cb [gaim-migrate @ 5965]
Christian Hammond <chipx86@chipx86.com>
parents: 5532
diff changeset
40 #include "account.h"
29553
5e7395ef6819 Include signals.h to provide PurpleCallback. I guess all the other places
Michael Ruprecht <maiku@pidgin.im>
parents: 29538
diff changeset
41 #include "signals.h"
10425
d82cef15da95 [gaim-migrate @ 11677]
Mark Doliner <markdoliner@pidgin.im>
parents: 10415
diff changeset
42 #include "xmlnode.h"
18101
3ce21b5a182c A patch from David Grohmann (dave1g) to log embedded images.
Richard Laager <rlaager@pidgin.im>
parents: 17389
diff changeset
43 #include "notify.h"
36581
09d5842255a2 Added missing includes and functions to headers
Ankit Vani <a@nevitus.org>
parents: 36544
diff changeset
44 #include "protocols.h"
5944
f19df037ac58 [gaim-migrate @ 6385]
Christian Hammond <chipx86@chipx86.com>
parents: 5943
diff changeset
45
12106
d7593d9b8bc9 [gaim-migrate @ 14403]
Sean Egan <seanegan@pidgin.im>
parents: 11920
diff changeset
46
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15707
diff changeset
47 typedef char *(*PurpleInfoFieldFormatCallback)(const char *field, size_t len);
13105
8f9c66e4af87 [gaim-migrate @ 15466]
Richard Laager <rlaager@pidgin.im>
parents: 13103
diff changeset
48
32787
7072f190d6ad Use G_BEGIN/END_DECLS in public libpurple files. This was
Elliott Sales de Andrade <qulogic@pidgin.im>
parents: 32737
diff changeset
49 G_BEGIN_DECLS
7072f190d6ad Use G_BEGIN/END_DECLS in public libpurple files. This was
Elliott Sales de Andrade <qulogic@pidgin.im>
parents: 32737
diff changeset
50
12919
519199cca273 [gaim-migrate @ 15272]
Etan Reisner <deryni@pidgin.im>
parents: 12908
diff changeset
51 /**
35400
a22531410e3f Convert docs from doxygen to gtk-doc format for request.h and util.h
Ankit Vani <a@nevitus.org>
parents: 35394
diff changeset
52 * purple_util_set_current_song:
35393
00f876b129bc Initial replacements for gtk-doc style comments
Ankit Vani <a@nevitus.org>
parents: 35265
diff changeset
53 * @title: The title of the song, %NULL to unset the value.
00f876b129bc Initial replacements for gtk-doc style comments
Ankit Vani <a@nevitus.org>
parents: 35265
diff changeset
54 * @artist: The artist of the song, can be %NULL.
00f876b129bc Initial replacements for gtk-doc style comments
Ankit Vani <a@nevitus.org>
parents: 35265
diff changeset
55 * @album: The album of the song, can be %NULL.
35400
a22531410e3f Convert docs from doxygen to gtk-doc format for request.h and util.h
Ankit Vani <a@nevitus.org>
parents: 35394
diff changeset
56 *
a22531410e3f Convert docs from doxygen to gtk-doc format for request.h and util.h
Ankit Vani <a@nevitus.org>
parents: 35394
diff changeset
57 * Set the appropriate presence values for the currently playing song.
22133
6eb22afb9701 Utility functions to set and format song information. Closes #4398.
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 22015
diff changeset
58 */
6eb22afb9701 Utility functions to set and format song information. Closes #4398.
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 22015
diff changeset
59 void purple_util_set_current_song(const char *title, const char *artist,
6eb22afb9701 Utility functions to set and format song information. Closes #4398.
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 22015
diff changeset
60 const char *album);
6eb22afb9701 Utility functions to set and format song information. Closes #4398.
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 22015
diff changeset
61
6eb22afb9701 Utility functions to set and format song information. Closes #4398.
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 22015
diff changeset
62 /**
35400
a22531410e3f Convert docs from doxygen to gtk-doc format for request.h and util.h
Ankit Vani <a@nevitus.org>
parents: 35394
diff changeset
63 * purple_util_format_song_info:
35393
00f876b129bc Initial replacements for gtk-doc style comments
Ankit Vani <a@nevitus.org>
parents: 35265
diff changeset
64 * @title: The title of the song, %NULL to unset the value.
00f876b129bc Initial replacements for gtk-doc style comments
Ankit Vani <a@nevitus.org>
parents: 35265
diff changeset
65 * @artist: The artist of the song, can be %NULL.
00f876b129bc Initial replacements for gtk-doc style comments
Ankit Vani <a@nevitus.org>
parents: 35265
diff changeset
66 * @album: The album of the song, can be %NULL.
00f876b129bc Initial replacements for gtk-doc style comments
Ankit Vani <a@nevitus.org>
parents: 35265
diff changeset
67 * @unused: Currently unused, must be %NULL.
22133
6eb22afb9701 Utility functions to set and format song information. Closes #4398.
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 22015
diff changeset
68 *
6eb22afb9701 Utility functions to set and format song information. Closes #4398.
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 22015
diff changeset
69 * Format song information.
6eb22afb9701 Utility functions to set and format song information. Closes #4398.
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 22015
diff changeset
70 *
35393
00f876b129bc Initial replacements for gtk-doc style comments
Ankit Vani <a@nevitus.org>
parents: 35265
diff changeset
71 * Returns: The formatted string. The caller must g_free the returned string.
22133
6eb22afb9701 Utility functions to set and format song information. Closes #4398.
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 22015
diff changeset
72 */
6eb22afb9701 Utility functions to set and format song information. Closes #4398.
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 22015
diff changeset
73 char * purple_util_format_song_info(const char *title, const char *artist,
6eb22afb9701 Utility functions to set and format song information. Closes #4398.
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 22015
diff changeset
74 const char *album, gpointer unused);
6eb22afb9701 Utility functions to set and format song information. Closes #4398.
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 22015
diff changeset
75
7108
82655fa54acb [gaim-migrate @ 7673]
Christian Hammond <chipx86@chipx86.com>
parents: 7107
diff changeset
76 /**************************************************************************/
35472
474e26199560 Removed @name
Ankit Vani <a@nevitus.org>
parents: 35471
diff changeset
77 /* Utility Subsystem */
21238
cd326828c870 Add and call a purple_util_uninit() to free user_dir and customer_home_dir
Richard Laager <rlaager@pidgin.im>
parents: 20226
diff changeset
78 /**************************************************************************/
cd326828c870 Add and call a purple_util_uninit() to free user_dir and customer_home_dir
Richard Laager <rlaager@pidgin.im>
parents: 20226
diff changeset
79
cd326828c870 Add and call a purple_util_uninit() to free user_dir and customer_home_dir
Richard Laager <rlaager@pidgin.im>
parents: 20226
diff changeset
80 /**
35400
a22531410e3f Convert docs from doxygen to gtk-doc format for request.h and util.h
Ankit Vani <a@nevitus.org>
parents: 35394
diff changeset
81 * purple_util_init:
21238
cd326828c870 Add and call a purple_util_uninit() to free user_dir and customer_home_dir
Richard Laager <rlaager@pidgin.im>
parents: 20226
diff changeset
82 *
cd326828c870 Add and call a purple_util_uninit() to free user_dir and customer_home_dir
Richard Laager <rlaager@pidgin.im>
parents: 20226
diff changeset
83 * Initializes the utility subsystem.
cd326828c870 Add and call a purple_util_uninit() to free user_dir and customer_home_dir
Richard Laager <rlaager@pidgin.im>
parents: 20226
diff changeset
84 */
cd326828c870 Add and call a purple_util_uninit() to free user_dir and customer_home_dir
Richard Laager <rlaager@pidgin.im>
parents: 20226
diff changeset
85 void purple_util_init(void);
cd326828c870 Add and call a purple_util_uninit() to free user_dir and customer_home_dir
Richard Laager <rlaager@pidgin.im>
parents: 20226
diff changeset
86
cd326828c870 Add and call a purple_util_uninit() to free user_dir and customer_home_dir
Richard Laager <rlaager@pidgin.im>
parents: 20226
diff changeset
87 /**
35400
a22531410e3f Convert docs from doxygen to gtk-doc format for request.h and util.h
Ankit Vani <a@nevitus.org>
parents: 35394
diff changeset
88 * purple_util_uninit:
21238
cd326828c870 Add and call a purple_util_uninit() to free user_dir and customer_home_dir
Richard Laager <rlaager@pidgin.im>
parents: 20226
diff changeset
89 *
cd326828c870 Add and call a purple_util_uninit() to free user_dir and customer_home_dir
Richard Laager <rlaager@pidgin.im>
parents: 20226
diff changeset
90 * Uninitializes the util subsystem.
cd326828c870 Add and call a purple_util_uninit() to free user_dir and customer_home_dir
Richard Laager <rlaager@pidgin.im>
parents: 20226
diff changeset
91 */
cd326828c870 Add and call a purple_util_uninit() to free user_dir and customer_home_dir
Richard Laager <rlaager@pidgin.im>
parents: 20226
diff changeset
92 void purple_util_uninit(void);
cd326828c870 Add and call a purple_util_uninit() to free user_dir and customer_home_dir
Richard Laager <rlaager@pidgin.im>
parents: 20226
diff changeset
93
cd326828c870 Add and call a purple_util_uninit() to free user_dir and customer_home_dir
Richard Laager <rlaager@pidgin.im>
parents: 20226
diff changeset
94 /**************************************************************************/
35472
474e26199560 Removed @name
Ankit Vani <a@nevitus.org>
parents: 35471
diff changeset
95 /* Date/Time Functions */
7108
82655fa54acb [gaim-migrate @ 7673]
Christian Hammond <chipx86@chipx86.com>
parents: 7107
diff changeset
96 /**************************************************************************/
82655fa54acb [gaim-migrate @ 7673]
Christian Hammond <chipx86@chipx86.com>
parents: 7107
diff changeset
97
4890
d87a9b5bbe57 [gaim-migrate @ 5220]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
98 /**
35400
a22531410e3f Convert docs from doxygen to gtk-doc format for request.h and util.h
Ankit Vani <a@nevitus.org>
parents: 35394
diff changeset
99 * purple_utf8_strftime:
a22531410e3f Convert docs from doxygen to gtk-doc format for request.h and util.h
Ankit Vani <a@nevitus.org>
parents: 35394
diff changeset
100 * @format: The format string, in UTF-8
a22531410e3f Convert docs from doxygen to gtk-doc format for request.h and util.h
Ankit Vani <a@nevitus.org>
parents: 35394
diff changeset
101 * @tm: The time to format, or %NULL to use the current local time
a22531410e3f Convert docs from doxygen to gtk-doc format for request.h and util.h
Ankit Vani <a@nevitus.org>
parents: 35394
diff changeset
102 *
13105
8f9c66e4af87 [gaim-migrate @ 15466]
Richard Laager <rlaager@pidgin.im>
parents: 13103
diff changeset
103 * Formats a time into the specified format.
8f9c66e4af87 [gaim-migrate @ 15466]
Richard Laager <rlaager@pidgin.im>
parents: 13103
diff changeset
104 *
8f9c66e4af87 [gaim-migrate @ 15466]
Richard Laager <rlaager@pidgin.im>
parents: 13103
diff changeset
105 * This is essentially strftime(), but it has a static buffer
8f9c66e4af87 [gaim-migrate @ 15466]
Richard Laager <rlaager@pidgin.im>
parents: 13103
diff changeset
106 * and handles the UTF-8 conversion for the caller.
13120
c25222322810 [gaim-migrate @ 15481]
Richard Laager <rlaager@pidgin.im>
parents: 13105
diff changeset
107 *
35467
975ae62dd895 Fix cross-references and some other warnings
Ankit Vani <a@nevitus.org>
parents: 35466
diff changeset
108 * This function also provides the GNU \%z formatter if the underlying C
13153
3e0b91a83516 [gaim-migrate @ 15515]
Richard Laager <rlaager@pidgin.im>
parents: 13120
diff changeset
109 * library doesn't. However, the format string parser is very naive, which
35467
975ae62dd895 Fix cross-references and some other warnings
Ankit Vani <a@nevitus.org>
parents: 35466
diff changeset
110 * means that conversions specifiers to \%z cannot be guaranteed. The GNU
975ae62dd895 Fix cross-references and some other warnings
Ankit Vani <a@nevitus.org>
parents: 35466
diff changeset
111 * strftime(3) man page describes \%z as: 'The time-zone as hour offset from
13153
3e0b91a83516 [gaim-migrate @ 15515]
Richard Laager <rlaager@pidgin.im>
parents: 13120
diff changeset
112 * GMT. Required to emit RFC822-conformant dates
35467
975ae62dd895 Fix cross-references and some other warnings
Ankit Vani <a@nevitus.org>
parents: 35466
diff changeset
113 * (using "\%a, \%d \%b \%Y \%H:\%M:\%S \%z"). (GNU)'
13153
3e0b91a83516 [gaim-migrate @ 15515]
Richard Laager <rlaager@pidgin.im>
parents: 13120
diff changeset
114 *
35467
975ae62dd895 Fix cross-references and some other warnings
Ankit Vani <a@nevitus.org>
parents: 35466
diff changeset
115 * On Windows, this function also converts the results for \%Z from a timezone
975ae62dd895 Fix cross-references and some other warnings
Ankit Vani <a@nevitus.org>
parents: 35466
diff changeset
116 * name (as returned by the system strftime() \%Z format string) to a timezone
975ae62dd895 Fix cross-references and some other warnings
Ankit Vani <a@nevitus.org>
parents: 35466
diff changeset
117 * abbreviation (as is the case on Unix). As with \%z, conversion specifiers
13334
d0d48650f114 [gaim-migrate @ 15703]
Richard Laager <rlaager@pidgin.im>
parents: 13216
diff changeset
118 * should not be used.
d0d48650f114 [gaim-migrate @ 15703]
Richard Laager <rlaager@pidgin.im>
parents: 13216
diff changeset
119 *
35400
a22531410e3f Convert docs from doxygen to gtk-doc format for request.h and util.h
Ankit Vani <a@nevitus.org>
parents: 35394
diff changeset
120 * Note: @format is required to be in UTF-8. This differs from strftime(),
a22531410e3f Convert docs from doxygen to gtk-doc format for request.h and util.h
Ankit Vani <a@nevitus.org>
parents: 35394
diff changeset
121 * where the format is provided in the locale charset.
13120
c25222322810 [gaim-migrate @ 15481]
Richard Laager <rlaager@pidgin.im>
parents: 13105
diff changeset
122 *
35393
00f876b129bc Initial replacements for gtk-doc style comments
Ankit Vani <a@nevitus.org>
parents: 35265
diff changeset
123 * Returns: The formatted time, in UTF-8.
13105
8f9c66e4af87 [gaim-migrate @ 15466]
Richard Laager <rlaager@pidgin.im>
parents: 13103
diff changeset
124 */
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15707
diff changeset
125 const char *purple_utf8_strftime(const char *format, const struct tm *tm);
13105
8f9c66e4af87 [gaim-migrate @ 15466]
Richard Laager <rlaager@pidgin.im>
parents: 13103
diff changeset
126
8f9c66e4af87 [gaim-migrate @ 15466]
Richard Laager <rlaager@pidgin.im>
parents: 13103
diff changeset
127 /**
35400
a22531410e3f Convert docs from doxygen to gtk-doc format for request.h and util.h
Ankit Vani <a@nevitus.org>
parents: 35394
diff changeset
128 * purple_date_format_full:
a22531410e3f Convert docs from doxygen to gtk-doc format for request.h and util.h
Ankit Vani <a@nevitus.org>
parents: 35394
diff changeset
129 * @tm: The time to format, or %NULL to use the current local time
a22531410e3f Convert docs from doxygen to gtk-doc format for request.h and util.h
Ankit Vani <a@nevitus.org>
parents: 35394
diff changeset
130 *
13105
8f9c66e4af87 [gaim-migrate @ 15466]
Richard Laager <rlaager@pidgin.im>
parents: 13103
diff changeset
131 * Formats a time into the user's preferred full date and time format.
8f9c66e4af87 [gaim-migrate @ 15466]
Richard Laager <rlaager@pidgin.im>
parents: 13103
diff changeset
132 *
8f9c66e4af87 [gaim-migrate @ 15466]
Richard Laager <rlaager@pidgin.im>
parents: 13103
diff changeset
133 * The returned string is stored in a static buffer, so the result
8f9c66e4af87 [gaim-migrate @ 15466]
Richard Laager <rlaager@pidgin.im>
parents: 13103
diff changeset
134 * should be g_strdup()'d if it's going to be kept.
8f9c66e4af87 [gaim-migrate @ 15466]
Richard Laager <rlaager@pidgin.im>
parents: 13103
diff changeset
135 *
35393
00f876b129bc Initial replacements for gtk-doc style comments
Ankit Vani <a@nevitus.org>
parents: 35265
diff changeset
136 * Returns: The date and time, formatted as per the user's settings. In the
33758
e176320b17f4 Add examples for the purple_date_format functions
Mark Doliner <mark@kingant.net>
parents: 33537
diff changeset
137 * USA this is something like "Mon Feb 18 15:26:44 2013"
13105
8f9c66e4af87 [gaim-migrate @ 15466]
Richard Laager <rlaager@pidgin.im>
parents: 13103
diff changeset
138 */
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15707
diff changeset
139 const char *purple_date_format_full(const struct tm *tm);
13105
8f9c66e4af87 [gaim-migrate @ 15466]
Richard Laager <rlaager@pidgin.im>
parents: 13103
diff changeset
140
8f9c66e4af87 [gaim-migrate @ 15466]
Richard Laager <rlaager@pidgin.im>
parents: 13103
diff changeset
141 /**
35400
a22531410e3f Convert docs from doxygen to gtk-doc format for request.h and util.h
Ankit Vani <a@nevitus.org>
parents: 35394
diff changeset
142 * PURPLE_NO_TZ_OFF:
a22531410e3f Convert docs from doxygen to gtk-doc format for request.h and util.h
Ankit Vani <a@nevitus.org>
parents: 35394
diff changeset
143 *
a22531410e3f Convert docs from doxygen to gtk-doc format for request.h and util.h
Ankit Vani <a@nevitus.org>
parents: 35394
diff changeset
144 * Used by purple_str_to_time to indicate no timezone offset was
a22531410e3f Convert docs from doxygen to gtk-doc format for request.h and util.h
Ankit Vani <a@nevitus.org>
parents: 35394
diff changeset
145 * specified in the timestamp string.
a22531410e3f Convert docs from doxygen to gtk-doc format for request.h and util.h
Ankit Vani <a@nevitus.org>
parents: 35394
diff changeset
146 */
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15707
diff changeset
147 #define PURPLE_NO_TZ_OFF -500000
13120
c25222322810 [gaim-migrate @ 15481]
Richard Laager <rlaager@pidgin.im>
parents: 13105
diff changeset
148
8577
64f25a17f8e4 [gaim-migrate @ 9326]
Nathan Walp <nwalp@pidgin.im>
parents: 8461
diff changeset
149 /**
35400
a22531410e3f Convert docs from doxygen to gtk-doc format for request.h and util.h
Ankit Vani <a@nevitus.org>
parents: 35394
diff changeset
150 * purple_str_to_time:
35393
00f876b129bc Initial replacements for gtk-doc style comments
Ankit Vani <a@nevitus.org>
parents: 35265
diff changeset
151 * @timestamp: The timestamp
00f876b129bc Initial replacements for gtk-doc style comments
Ankit Vani <a@nevitus.org>
parents: 35265
diff changeset
152 * @utc: Assume UTC if no timezone specified
00f876b129bc Initial replacements for gtk-doc style comments
Ankit Vani <a@nevitus.org>
parents: 35265
diff changeset
153 * @tm: If not %NULL, the caller can get a copy of the
13120
c25222322810 [gaim-migrate @ 15481]
Richard Laager <rlaager@pidgin.im>
parents: 13105
diff changeset
154 * struct tm used to calculate the time_t return value.
35393
00f876b129bc Initial replacements for gtk-doc style comments
Ankit Vani <a@nevitus.org>
parents: 35265
diff changeset
155 * @tz_off: If not %NULL, the caller can get a copy of the
13120
c25222322810 [gaim-migrate @ 15481]
Richard Laager <rlaager@pidgin.im>
parents: 13105
diff changeset
156 * timezone offset (from UTC) used to calculate the time_t
c25222322810 [gaim-migrate @ 15481]
Richard Laager <rlaager@pidgin.im>
parents: 13105
diff changeset
157 * return value. Note: Zero is a valid offset. As such,
35400
a22531410e3f Convert docs from doxygen to gtk-doc format for request.h and util.h
Ankit Vani <a@nevitus.org>
parents: 35394
diff changeset
158 * the value of the macro PURPLE_NO_TZ_OFF indicates no
13120
c25222322810 [gaim-migrate @ 15481]
Richard Laager <rlaager@pidgin.im>
parents: 13105
diff changeset
159 * offset was specified (which means that the local
c25222322810 [gaim-migrate @ 15481]
Richard Laager <rlaager@pidgin.im>
parents: 13105
diff changeset
160 * timezone was used in the calculation).
35393
00f876b129bc Initial replacements for gtk-doc style comments
Ankit Vani <a@nevitus.org>
parents: 35265
diff changeset
161 * @rest: If not %NULL, the caller can get a pointer to the
35400
a22531410e3f Convert docs from doxygen to gtk-doc format for request.h and util.h
Ankit Vani <a@nevitus.org>
parents: 35394
diff changeset
162 * part of @timestamp left over after parsing is
a22531410e3f Convert docs from doxygen to gtk-doc format for request.h and util.h
Ankit Vani <a@nevitus.org>
parents: 35394
diff changeset
163 * completed, if it's not the end of @timestamp.
a22531410e3f Convert docs from doxygen to gtk-doc format for request.h and util.h
Ankit Vani <a@nevitus.org>
parents: 35394
diff changeset
164 *
13105
8f9c66e4af87 [gaim-migrate @ 15466]
Richard Laager <rlaager@pidgin.im>
parents: 13103
diff changeset
165 * Parses a timestamp in jabber, ISO8601, or MM/DD/YYYY format and returns
8f9c66e4af87 [gaim-migrate @ 15466]
Richard Laager <rlaager@pidgin.im>
parents: 13103
diff changeset
166 * a time_t.
8577
64f25a17f8e4 [gaim-migrate @ 9326]
Nathan Walp <nwalp@pidgin.im>
parents: 8461
diff changeset
167 *
35393
00f876b129bc Initial replacements for gtk-doc style comments
Ankit Vani <a@nevitus.org>
parents: 35265
diff changeset
168 * Returns: A time_t.
8577
64f25a17f8e4 [gaim-migrate @ 9326]
Nathan Walp <nwalp@pidgin.im>
parents: 8461
diff changeset
169 */
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15707
diff changeset
170 time_t purple_str_to_time(const char *timestamp, gboolean utc,
13120
c25222322810 [gaim-migrate @ 15481]
Richard Laager <rlaager@pidgin.im>
parents: 13105
diff changeset
171 struct tm *tm, long *tz_off, const char **rest);
8577
64f25a17f8e4 [gaim-migrate @ 9326]
Nathan Walp <nwalp@pidgin.im>
parents: 8461
diff changeset
172
33051
2e75223c078e Do some proper parsing of UTS-35 date formats.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents: 32787
diff changeset
173 /**
38619
2121337626ee Add purple_str_to_date_time.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents: 38341
diff changeset
174 * purple_str_to_date_time:
2121337626ee Add purple_str_to_date_time.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents: 38341
diff changeset
175 * @timestamp: The timestamp
2121337626ee Add purple_str_to_date_time.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents: 38341
diff changeset
176 * @utc: Assume UTC if no timezone specified
2121337626ee Add purple_str_to_date_time.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents: 38341
diff changeset
177 *
2121337626ee Add purple_str_to_date_time.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents: 38341
diff changeset
178 * Parses a timestamp in jabber, ISO8601, or MM/DD/YYYY format and returns
2121337626ee Add purple_str_to_date_time.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents: 38341
diff changeset
179 * a GDateTime.
2121337626ee Add purple_str_to_date_time.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents: 38341
diff changeset
180 *
2121337626ee Add purple_str_to_date_time.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents: 38341
diff changeset
181 * Returns: (transfer full): A GDateTime.
2121337626ee Add purple_str_to_date_time.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents: 38341
diff changeset
182 */
2121337626ee Add purple_str_to_date_time.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents: 38341
diff changeset
183 GDateTime *purple_str_to_date_time(const char *timestamp, gboolean utc);
2121337626ee Add purple_str_to_date_time.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents: 38341
diff changeset
184
40170
c69c52a5ffe7 Add purple_get_month() util function
qarkai <qarkai@gmail.com>
parents: 40142
diff changeset
185 /**
40171
564fcabca6d9 Rename purple_get_month -> purple_time_parse_month
qarkai <qarkai@gmail.com>
parents: 40170
diff changeset
186 * purple_time_parse_month:
40170
c69c52a5ffe7 Add purple_get_month() util function
qarkai <qarkai@gmail.com>
parents: 40142
diff changeset
187 * @month_abbr: The 3-letter month abbreviation
c69c52a5ffe7 Add purple_get_month() util function
qarkai <qarkai@gmail.com>
parents: 40142
diff changeset
188 *
c69c52a5ffe7 Add purple_get_month() util function
qarkai <qarkai@gmail.com>
parents: 40142
diff changeset
189 * Get month number suitable for GDateTime. If @month_abbr is unknown,
c69c52a5ffe7 Add purple_get_month() util function
qarkai <qarkai@gmail.com>
parents: 40142
diff changeset
190 * returns 0.
c69c52a5ffe7 Add purple_get_month() util function
qarkai <qarkai@gmail.com>
parents: 40142
diff changeset
191 *
c69c52a5ffe7 Add purple_get_month() util function
qarkai <qarkai@gmail.com>
parents: 40142
diff changeset
192 * Returns: A month number or 0.
40171
564fcabca6d9 Rename purple_get_month -> purple_time_parse_month
qarkai <qarkai@gmail.com>
parents: 40170
diff changeset
193 *
564fcabca6d9 Rename purple_get_month -> purple_time_parse_month
qarkai <qarkai@gmail.com>
parents: 40170
diff changeset
194 * Since: 3.0.0
40170
c69c52a5ffe7 Add purple_get_month() util function
qarkai <qarkai@gmail.com>
parents: 40142
diff changeset
195 */
40171
564fcabca6d9 Rename purple_get_month -> purple_time_parse_month
qarkai <qarkai@gmail.com>
parents: 40170
diff changeset
196 gint purple_time_parse_month(const char *month_abbr);
40170
c69c52a5ffe7 Add purple_get_month() util function
qarkai <qarkai@gmail.com>
parents: 40142
diff changeset
197
7108
82655fa54acb [gaim-migrate @ 7673]
Christian Hammond <chipx86@chipx86.com>
parents: 7107
diff changeset
198 /**************************************************************************/
35472
474e26199560 Removed @name
Ankit Vani <a@nevitus.org>
parents: 35471
diff changeset
199 /* Path/Filename Functions */
7108
82655fa54acb [gaim-migrate @ 7673]
Christian Hammond <chipx86@chipx86.com>
parents: 7107
diff changeset
200 /**************************************************************************/
82655fa54acb [gaim-migrate @ 7673]
Christian Hammond <chipx86@chipx86.com>
parents: 7107
diff changeset
201
82655fa54acb [gaim-migrate @ 7673]
Christian Hammond <chipx86@chipx86.com>
parents: 7107
diff changeset
202 /**
35400
a22531410e3f Convert docs from doxygen to gtk-doc format for request.h and util.h
Ankit Vani <a@nevitus.org>
parents: 35394
diff changeset
203 * purple_home_dir:
a22531410e3f Convert docs from doxygen to gtk-doc format for request.h and util.h
Ankit Vani <a@nevitus.org>
parents: 35394
diff changeset
204 *
7108
82655fa54acb [gaim-migrate @ 7673]
Christian Hammond <chipx86@chipx86.com>
parents: 7107
diff changeset
205 * Returns the user's home directory.
82655fa54acb [gaim-migrate @ 7673]
Christian Hammond <chipx86@chipx86.com>
parents: 7107
diff changeset
206 *
35471
a23769351b31 Remove @see
Ankit Vani <a@nevitus.org>
parents: 35468
diff changeset
207 * See purple_user_dir()
7108
82655fa54acb [gaim-migrate @ 7673]
Christian Hammond <chipx86@chipx86.com>
parents: 7107
diff changeset
208 *
35471
a23769351b31 Remove @see
Ankit Vani <a@nevitus.org>
parents: 35468
diff changeset
209 * Returns: The user's home directory.
7108
82655fa54acb [gaim-migrate @ 7673]
Christian Hammond <chipx86@chipx86.com>
parents: 7107
diff changeset
210 */
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15707
diff changeset
211 const gchar *purple_home_dir(void);
7108
82655fa54acb [gaim-migrate @ 7673]
Christian Hammond <chipx86@chipx86.com>
parents: 7107
diff changeset
212
82655fa54acb [gaim-migrate @ 7673]
Christian Hammond <chipx86@chipx86.com>
parents: 7107
diff changeset
213 /**
35400
a22531410e3f Convert docs from doxygen to gtk-doc format for request.h and util.h
Ankit Vani <a@nevitus.org>
parents: 35394
diff changeset
214 * purple_user_dir:
a22531410e3f Convert docs from doxygen to gtk-doc format for request.h and util.h
Ankit Vani <a@nevitus.org>
parents: 35394
diff changeset
215 *
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15707
diff changeset
216 * Returns the purple settings directory in the user's home directory.
38891
f59bb8304c21 Fix some functions descriptions
qarkai <qarkai@gmail.com>
parents: 38890
diff changeset
217 * This is usually $HOME/.purple
7108
82655fa54acb [gaim-migrate @ 7673]
Christian Hammond <chipx86@chipx86.com>
parents: 7107
diff changeset
218 *
35471
a23769351b31 Remove @see
Ankit Vani <a@nevitus.org>
parents: 35468
diff changeset
219 * See purple_home_dir()
7108
82655fa54acb [gaim-migrate @ 7673]
Christian Hammond <chipx86@chipx86.com>
parents: 7107
diff changeset
220 *
35471
a23769351b31 Remove @see
Ankit Vani <a@nevitus.org>
parents: 35468
diff changeset
221 * Returns: The purple settings directory.
38879
2eb179d4f7ac Deprecate purple_user_dir(), purple_util_write_data_to_file(), purple_util_read_xml_from_file()
qarkai <qarkai@gmail.com>
parents: 38878
diff changeset
222 *
2eb179d4f7ac Deprecate purple_user_dir(), purple_util_write_data_to_file(), purple_util_read_xml_from_file()
qarkai <qarkai@gmail.com>
parents: 38878
diff changeset
223 * Deprecated: Use purple_cache_dir(), purple_config_dir() or
2eb179d4f7ac Deprecate purple_user_dir(), purple_util_write_data_to_file(), purple_util_read_xml_from_file()
qarkai <qarkai@gmail.com>
parents: 38878
diff changeset
224 * purple_data_dir() instead.
7108
82655fa54acb [gaim-migrate @ 7673]
Christian Hammond <chipx86@chipx86.com>
parents: 7107
diff changeset
225 */
40560
6af4d993c8e5 Fix build with clang 11.0.0
Steve Wills <steve@mouf.net>
parents: 40559
diff changeset
226 G_DEPRECATED_FOR(purple_cache_dir or purple_config_dir or purple_data_dir)
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15707
diff changeset
227 const char *purple_user_dir(void);
7108
82655fa54acb [gaim-migrate @ 7673]
Christian Hammond <chipx86@chipx86.com>
parents: 7107
diff changeset
228
82655fa54acb [gaim-migrate @ 7673]
Christian Hammond <chipx86@chipx86.com>
parents: 7107
diff changeset
229 /**
38870
575e41bfc15e Migrate certificates, icons, logs to XDG dirs
qarkai <qarkai@gmail.com>
parents: 38016
diff changeset
230 * purple_cache_dir:
575e41bfc15e Migrate certificates, icons, logs to XDG dirs
qarkai <qarkai@gmail.com>
parents: 38016
diff changeset
231 *
575e41bfc15e Migrate certificates, icons, logs to XDG dirs
qarkai <qarkai@gmail.com>
parents: 38016
diff changeset
232 * Returns the purple cache directory according to XDG Base Directory Specification.
38891
f59bb8304c21 Fix some functions descriptions
qarkai <qarkai@gmail.com>
parents: 38890
diff changeset
233 * This is usually $HOME/.cache/purple.
38874
0fc4ba7fa2be Make XDG dir structure inside custom user dir
qarkai <qarkai@gmail.com>
parents: 38872
diff changeset
234 * If custom user dir was specified then this is cache
0fc4ba7fa2be Make XDG dir structure inside custom user dir
qarkai <qarkai@gmail.com>
parents: 38872
diff changeset
235 * sub-directory of DIR argument passed to -c option.
38870
575e41bfc15e Migrate certificates, icons, logs to XDG dirs
qarkai <qarkai@gmail.com>
parents: 38016
diff changeset
236 *
575e41bfc15e Migrate certificates, icons, logs to XDG dirs
qarkai <qarkai@gmail.com>
parents: 38016
diff changeset
237 * Returns: The purple cache directory.
575e41bfc15e Migrate certificates, icons, logs to XDG dirs
qarkai <qarkai@gmail.com>
parents: 38016
diff changeset
238 */
38890
d2408369eb7c Use gchar for xdg dirs variables
qarkai <qarkai@gmail.com>
parents: 38879
diff changeset
239 const gchar *purple_cache_dir(void);
38870
575e41bfc15e Migrate certificates, icons, logs to XDG dirs
qarkai <qarkai@gmail.com>
parents: 38016
diff changeset
240
575e41bfc15e Migrate certificates, icons, logs to XDG dirs
qarkai <qarkai@gmail.com>
parents: 38016
diff changeset
241 /**
575e41bfc15e Migrate certificates, icons, logs to XDG dirs
qarkai <qarkai@gmail.com>
parents: 38016
diff changeset
242 * purple_config_dir:
575e41bfc15e Migrate certificates, icons, logs to XDG dirs
qarkai <qarkai@gmail.com>
parents: 38016
diff changeset
243 *
575e41bfc15e Migrate certificates, icons, logs to XDG dirs
qarkai <qarkai@gmail.com>
parents: 38016
diff changeset
244 * Returns the purple configuration directory according to XDG Base Directory Specification.
38891
f59bb8304c21 Fix some functions descriptions
qarkai <qarkai@gmail.com>
parents: 38890
diff changeset
245 * This is usually $HOME/.config/purple.
38874
0fc4ba7fa2be Make XDG dir structure inside custom user dir
qarkai <qarkai@gmail.com>
parents: 38872
diff changeset
246 * If custom user dir was specified then this is config
0fc4ba7fa2be Make XDG dir structure inside custom user dir
qarkai <qarkai@gmail.com>
parents: 38872
diff changeset
247 * sub-directory of DIR argument passed to -c option.
38870
575e41bfc15e Migrate certificates, icons, logs to XDG dirs
qarkai <qarkai@gmail.com>
parents: 38016
diff changeset
248 *
575e41bfc15e Migrate certificates, icons, logs to XDG dirs
qarkai <qarkai@gmail.com>
parents: 38016
diff changeset
249 * Returns: The purple configuration directory.
575e41bfc15e Migrate certificates, icons, logs to XDG dirs
qarkai <qarkai@gmail.com>
parents: 38016
diff changeset
250 */
38890
d2408369eb7c Use gchar for xdg dirs variables
qarkai <qarkai@gmail.com>
parents: 38879
diff changeset
251 const gchar *purple_config_dir(void);
38870
575e41bfc15e Migrate certificates, icons, logs to XDG dirs
qarkai <qarkai@gmail.com>
parents: 38016
diff changeset
252
575e41bfc15e Migrate certificates, icons, logs to XDG dirs
qarkai <qarkai@gmail.com>
parents: 38016
diff changeset
253 /**
575e41bfc15e Migrate certificates, icons, logs to XDG dirs
qarkai <qarkai@gmail.com>
parents: 38016
diff changeset
254 * purple_data_dir:
575e41bfc15e Migrate certificates, icons, logs to XDG dirs
qarkai <qarkai@gmail.com>
parents: 38016
diff changeset
255 *
575e41bfc15e Migrate certificates, icons, logs to XDG dirs
qarkai <qarkai@gmail.com>
parents: 38016
diff changeset
256 * Returns the purple data directory according to XDG Base Directory Specification.
38891
f59bb8304c21 Fix some functions descriptions
qarkai <qarkai@gmail.com>
parents: 38890
diff changeset
257 * This is usually $HOME/.local/share/purple.
38874
0fc4ba7fa2be Make XDG dir structure inside custom user dir
qarkai <qarkai@gmail.com>
parents: 38872
diff changeset
258 * If custom user dir was specified then this is data
0fc4ba7fa2be Make XDG dir structure inside custom user dir
qarkai <qarkai@gmail.com>
parents: 38872
diff changeset
259 * sub-directory of DIR argument passed to -c option.
38870
575e41bfc15e Migrate certificates, icons, logs to XDG dirs
qarkai <qarkai@gmail.com>
parents: 38016
diff changeset
260 *
575e41bfc15e Migrate certificates, icons, logs to XDG dirs
qarkai <qarkai@gmail.com>
parents: 38016
diff changeset
261 * Returns: The purple data directory.
575e41bfc15e Migrate certificates, icons, logs to XDG dirs
qarkai <qarkai@gmail.com>
parents: 38016
diff changeset
262 */
38890
d2408369eb7c Use gchar for xdg dirs variables
qarkai <qarkai@gmail.com>
parents: 38879
diff changeset
263 const gchar *purple_data_dir(void);
38870
575e41bfc15e Migrate certificates, icons, logs to XDG dirs
qarkai <qarkai@gmail.com>
parents: 38016
diff changeset
264
575e41bfc15e Migrate certificates, icons, logs to XDG dirs
qarkai <qarkai@gmail.com>
parents: 38016
diff changeset
265 /**
38878
6d800b496317 Migrate xmpp-caps.xml to XDG cache dir
qarkai <qarkai@gmail.com>
parents: 38877
diff changeset
266 * purple_move_to_xdg_base_dir:
6d800b496317 Migrate xmpp-caps.xml to XDG cache dir
qarkai <qarkai@gmail.com>
parents: 38877
diff changeset
267 * @purple_xdg_dir: The path to cache, config or data dir.
6d800b496317 Migrate xmpp-caps.xml to XDG cache dir
qarkai <qarkai@gmail.com>
parents: 38877
diff changeset
268 * Use respective function
6d800b496317 Migrate xmpp-caps.xml to XDG cache dir
qarkai <qarkai@gmail.com>
parents: 38877
diff changeset
269 * @path: File or directory in purple_user_dir
6d800b496317 Migrate xmpp-caps.xml to XDG cache dir
qarkai <qarkai@gmail.com>
parents: 38877
diff changeset
270 *
6d800b496317 Migrate xmpp-caps.xml to XDG cache dir
qarkai <qarkai@gmail.com>
parents: 38877
diff changeset
271 * Moves file or directory from legacy user dir to XDG
6d800b496317 Migrate xmpp-caps.xml to XDG cache dir
qarkai <qarkai@gmail.com>
parents: 38877
diff changeset
272 * based dir.
38893
ea7c40572374 Move migration to core, check for errors
qarkai <qarkai@gmail.com>
parents: 38891
diff changeset
273 *
ea7c40572374 Move migration to core, check for errors
qarkai <qarkai@gmail.com>
parents: 38891
diff changeset
274 * Returns: TRUE if moved successfully, FALSE otherwise
38878
6d800b496317 Migrate xmpp-caps.xml to XDG cache dir
qarkai <qarkai@gmail.com>
parents: 38877
diff changeset
275 */
38893
ea7c40572374 Move migration to core, check for errors
qarkai <qarkai@gmail.com>
parents: 38891
diff changeset
276 gboolean
38878
6d800b496317 Migrate xmpp-caps.xml to XDG cache dir
qarkai <qarkai@gmail.com>
parents: 38877
diff changeset
277 purple_move_to_xdg_base_dir(const char *purple_xdg_dir, char *path);
38870
575e41bfc15e Migrate certificates, icons, logs to XDG dirs
qarkai <qarkai@gmail.com>
parents: 38016
diff changeset
278
575e41bfc15e Migrate certificates, icons, logs to XDG dirs
qarkai <qarkai@gmail.com>
parents: 38016
diff changeset
279 /**
35400
a22531410e3f Convert docs from doxygen to gtk-doc format for request.h and util.h
Ankit Vani <a@nevitus.org>
parents: 35394
diff changeset
280 * purple_util_set_user_dir:
a22531410e3f Convert docs from doxygen to gtk-doc format for request.h and util.h
Ankit Vani <a@nevitus.org>
parents: 35394
diff changeset
281 * @dir: The custom settings directory
a22531410e3f Convert docs from doxygen to gtk-doc format for request.h and util.h
Ankit Vani <a@nevitus.org>
parents: 35394
diff changeset
282 *
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15707
diff changeset
283 * Define a custom purple settings directory, overriding the default (user's home directory/.purple)
8596
6d70d45b8ea6 [gaim-migrate @ 9347]
Daniel Atallah <datallah@pidgin.im>
parents: 8577
diff changeset
284 */
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15707
diff changeset
285 void purple_util_set_user_dir(const char *dir);
8596
6d70d45b8ea6 [gaim-migrate @ 9347]
Daniel Atallah <datallah@pidgin.im>
parents: 8577
diff changeset
286
6d70d45b8ea6 [gaim-migrate @ 9347]
Daniel Atallah <datallah@pidgin.im>
parents: 8577
diff changeset
287 /**
35400
a22531410e3f Convert docs from doxygen to gtk-doc format for request.h and util.h
Ankit Vani <a@nevitus.org>
parents: 35394
diff changeset
288 * purple_util_write_data_to_file:
a22531410e3f Convert docs from doxygen to gtk-doc format for request.h and util.h
Ankit Vani <a@nevitus.org>
parents: 35394
diff changeset
289 * @filename: The basename of the file to write in the purple_user_dir.
38891
f59bb8304c21 Fix some functions descriptions
qarkai <qarkai@gmail.com>
parents: 38890
diff changeset
290 * @data: A string of data to write.
35400
a22531410e3f Convert docs from doxygen to gtk-doc format for request.h and util.h
Ankit Vani <a@nevitus.org>
parents: 35394
diff changeset
291 * @size: The size of the data to save. If data is
a22531410e3f Convert docs from doxygen to gtk-doc format for request.h and util.h
Ankit Vani <a@nevitus.org>
parents: 35394
diff changeset
292 * null-terminated you can pass in -1.
a22531410e3f Convert docs from doxygen to gtk-doc format for request.h and util.h
Ankit Vani <a@nevitus.org>
parents: 35394
diff changeset
293 *
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15707
diff changeset
294 * Write a string of data to a file of the given name in the Purple
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15707
diff changeset
295 * user directory ($HOME/.purple by default). The data is typically
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15707
diff changeset
296 * a serialized version of one of Purple's config files, such as
10415
faceb835eb87 [gaim-migrate @ 11665]
Mark Doliner <markdoliner@pidgin.im>
parents: 10414
diff changeset
297 * prefs.xml, accounts.xml, etc. And the string is typically
34935
686fa55b0deb Replaced xmlnode with PurpleXmlNode, and xmlnode_* API with purple_xmlnode_* API
Ankit Vani <a@nevitus.org>
parents: 34822
diff changeset
298 * obtained using purple_xmlnode_to_formatted_str. However, this function
10415
faceb835eb87 [gaim-migrate @ 11665]
Mark Doliner <markdoliner@pidgin.im>
parents: 10414
diff changeset
299 * should work fine for saving binary files as well.
10414
6b10b76933e1 [gaim-migrate @ 11664]
Mark Doliner <markdoliner@pidgin.im>
parents: 10332
diff changeset
300 *
35393
00f876b129bc Initial replacements for gtk-doc style comments
Ankit Vani <a@nevitus.org>
parents: 35265
diff changeset
301 * Returns: TRUE if the file was written successfully. FALSE otherwise.
38879
2eb179d4f7ac Deprecate purple_user_dir(), purple_util_write_data_to_file(), purple_util_read_xml_from_file()
qarkai <qarkai@gmail.com>
parents: 38878
diff changeset
302 *
2eb179d4f7ac Deprecate purple_user_dir(), purple_util_write_data_to_file(), purple_util_read_xml_from_file()
qarkai <qarkai@gmail.com>
parents: 38878
diff changeset
303 * Deprecated: Use purple_util_write_data_to_cache_file(),
2eb179d4f7ac Deprecate purple_user_dir(), purple_util_write_data_to_file(), purple_util_read_xml_from_file()
qarkai <qarkai@gmail.com>
parents: 38878
diff changeset
304 * purple_util_write_data_to_config_file() or
2eb179d4f7ac Deprecate purple_user_dir(), purple_util_write_data_to_file(), purple_util_read_xml_from_file()
qarkai <qarkai@gmail.com>
parents: 38878
diff changeset
305 * purple_util_write_data_to_data_file() instead.
10414
6b10b76933e1 [gaim-migrate @ 11664]
Mark Doliner <markdoliner@pidgin.im>
parents: 10332
diff changeset
306 */
40560
6af4d993c8e5 Fix build with clang 11.0.0
Steve Wills <steve@mouf.net>
parents: 40559
diff changeset
307 G_DEPRECATED_FOR(purple_util_write_data_to_cache_file or purple_util_write_data_to_config_file or purple_util_write_data_to_data_file)
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15707
diff changeset
308 gboolean purple_util_write_data_to_file(const char *filename, const char *data,
19663
44c4b4ce3cd8 Fix purple_util_write_data_to_file signature.
Daniel Atallah <datallah@pidgin.im>
parents: 19662
diff changeset
309 gssize size);
10414
6b10b76933e1 [gaim-migrate @ 11664]
Mark Doliner <markdoliner@pidgin.im>
parents: 10332
diff changeset
310
6b10b76933e1 [gaim-migrate @ 11664]
Mark Doliner <markdoliner@pidgin.im>
parents: 10332
diff changeset
311 /**
38872
af422a3fb924 Add purple_util_write_data_to_*_file declarations
qarkai <qarkai@gmail.com>
parents: 38870
diff changeset
312 * purple_util_write_data_to_cache_file:
af422a3fb924 Add purple_util_write_data_to_*_file declarations
qarkai <qarkai@gmail.com>
parents: 38870
diff changeset
313 * @filename: The basename of the file to write in the purple_cache_dir.
38891
f59bb8304c21 Fix some functions descriptions
qarkai <qarkai@gmail.com>
parents: 38890
diff changeset
314 * @data: A string of data to write.
38872
af422a3fb924 Add purple_util_write_data_to_*_file declarations
qarkai <qarkai@gmail.com>
parents: 38870
diff changeset
315 * @size: The size of the data to save. If data is
af422a3fb924 Add purple_util_write_data_to_*_file declarations
qarkai <qarkai@gmail.com>
parents: 38870
diff changeset
316 * null-terminated you can pass in -1.
af422a3fb924 Add purple_util_write_data_to_*_file declarations
qarkai <qarkai@gmail.com>
parents: 38870
diff changeset
317 *
af422a3fb924 Add purple_util_write_data_to_*_file declarations
qarkai <qarkai@gmail.com>
parents: 38870
diff changeset
318 * Write a string of data to a file of the given name in the Purple
af422a3fb924 Add purple_util_write_data_to_*_file declarations
qarkai <qarkai@gmail.com>
parents: 38870
diff changeset
319 * cache directory ($HOME/.cache/purple by default).
af422a3fb924 Add purple_util_write_data_to_*_file declarations
qarkai <qarkai@gmail.com>
parents: 38870
diff changeset
320 *
af422a3fb924 Add purple_util_write_data_to_*_file declarations
qarkai <qarkai@gmail.com>
parents: 38870
diff changeset
321 * See purple_util_write_data_to_file()
af422a3fb924 Add purple_util_write_data_to_*_file declarations
qarkai <qarkai@gmail.com>
parents: 38870
diff changeset
322 *
af422a3fb924 Add purple_util_write_data_to_*_file declarations
qarkai <qarkai@gmail.com>
parents: 38870
diff changeset
323 * Returns: TRUE if the file was written successfully. FALSE otherwise.
af422a3fb924 Add purple_util_write_data_to_*_file declarations
qarkai <qarkai@gmail.com>
parents: 38870
diff changeset
324 */
38874
0fc4ba7fa2be Make XDG dir structure inside custom user dir
qarkai <qarkai@gmail.com>
parents: 38872
diff changeset
325 gboolean
0fc4ba7fa2be Make XDG dir structure inside custom user dir
qarkai <qarkai@gmail.com>
parents: 38872
diff changeset
326 purple_util_write_data_to_cache_file(const char *filename, const char *data, gssize size);
38872
af422a3fb924 Add purple_util_write_data_to_*_file declarations
qarkai <qarkai@gmail.com>
parents: 38870
diff changeset
327
af422a3fb924 Add purple_util_write_data_to_*_file declarations
qarkai <qarkai@gmail.com>
parents: 38870
diff changeset
328 /**
af422a3fb924 Add purple_util_write_data_to_*_file declarations
qarkai <qarkai@gmail.com>
parents: 38870
diff changeset
329 * purple_util_write_data_to_config_file:
af422a3fb924 Add purple_util_write_data_to_*_file declarations
qarkai <qarkai@gmail.com>
parents: 38870
diff changeset
330 * @filename: The basename of the file to write in the purple_config_dir.
38891
f59bb8304c21 Fix some functions descriptions
qarkai <qarkai@gmail.com>
parents: 38890
diff changeset
331 * @data: A string of data to write.
38872
af422a3fb924 Add purple_util_write_data_to_*_file declarations
qarkai <qarkai@gmail.com>
parents: 38870
diff changeset
332 * @size: The size of the data to save. If data is
af422a3fb924 Add purple_util_write_data_to_*_file declarations
qarkai <qarkai@gmail.com>
parents: 38870
diff changeset
333 * null-terminated you can pass in -1.
af422a3fb924 Add purple_util_write_data_to_*_file declarations
qarkai <qarkai@gmail.com>
parents: 38870
diff changeset
334 *
af422a3fb924 Add purple_util_write_data_to_*_file declarations
qarkai <qarkai@gmail.com>
parents: 38870
diff changeset
335 * Write a string of data to a file of the given name in the Purple
af422a3fb924 Add purple_util_write_data_to_*_file declarations
qarkai <qarkai@gmail.com>
parents: 38870
diff changeset
336 * config directory ($HOME/.config/purple by default).
af422a3fb924 Add purple_util_write_data_to_*_file declarations
qarkai <qarkai@gmail.com>
parents: 38870
diff changeset
337 *
af422a3fb924 Add purple_util_write_data_to_*_file declarations
qarkai <qarkai@gmail.com>
parents: 38870
diff changeset
338 * See purple_util_write_data_to_file()
af422a3fb924 Add purple_util_write_data_to_*_file declarations
qarkai <qarkai@gmail.com>
parents: 38870
diff changeset
339 *
af422a3fb924 Add purple_util_write_data_to_*_file declarations
qarkai <qarkai@gmail.com>
parents: 38870
diff changeset
340 * Returns: TRUE if the file was written successfully. FALSE otherwise.
af422a3fb924 Add purple_util_write_data_to_*_file declarations
qarkai <qarkai@gmail.com>
parents: 38870
diff changeset
341 */
38874
0fc4ba7fa2be Make XDG dir structure inside custom user dir
qarkai <qarkai@gmail.com>
parents: 38872
diff changeset
342 gboolean
0fc4ba7fa2be Make XDG dir structure inside custom user dir
qarkai <qarkai@gmail.com>
parents: 38872
diff changeset
343 purple_util_write_data_to_config_file(const char *filename, const char *data, gssize size);
38872
af422a3fb924 Add purple_util_write_data_to_*_file declarations
qarkai <qarkai@gmail.com>
parents: 38870
diff changeset
344
af422a3fb924 Add purple_util_write_data_to_*_file declarations
qarkai <qarkai@gmail.com>
parents: 38870
diff changeset
345 /**
af422a3fb924 Add purple_util_write_data_to_*_file declarations
qarkai <qarkai@gmail.com>
parents: 38870
diff changeset
346 * purple_util_write_data_to_data_file:
af422a3fb924 Add purple_util_write_data_to_*_file declarations
qarkai <qarkai@gmail.com>
parents: 38870
diff changeset
347 * @filename: The basename of the file to write in the purple_data_dir.
38891
f59bb8304c21 Fix some functions descriptions
qarkai <qarkai@gmail.com>
parents: 38890
diff changeset
348 * @data: A string of data to write.
38872
af422a3fb924 Add purple_util_write_data_to_*_file declarations
qarkai <qarkai@gmail.com>
parents: 38870
diff changeset
349 * @size: The size of the data to save. If data is
af422a3fb924 Add purple_util_write_data_to_*_file declarations
qarkai <qarkai@gmail.com>
parents: 38870
diff changeset
350 * null-terminated you can pass in -1.
af422a3fb924 Add purple_util_write_data_to_*_file declarations
qarkai <qarkai@gmail.com>
parents: 38870
diff changeset
351 *
af422a3fb924 Add purple_util_write_data_to_*_file declarations
qarkai <qarkai@gmail.com>
parents: 38870
diff changeset
352 * Write a string of data to a file of the given name in the Purple
af422a3fb924 Add purple_util_write_data_to_*_file declarations
qarkai <qarkai@gmail.com>
parents: 38870
diff changeset
353 * data directory ($HOME/.local/share/purple by default).
af422a3fb924 Add purple_util_write_data_to_*_file declarations
qarkai <qarkai@gmail.com>
parents: 38870
diff changeset
354 *
af422a3fb924 Add purple_util_write_data_to_*_file declarations
qarkai <qarkai@gmail.com>
parents: 38870
diff changeset
355 * See purple_util_write_data_to_file()
af422a3fb924 Add purple_util_write_data_to_*_file declarations
qarkai <qarkai@gmail.com>
parents: 38870
diff changeset
356 *
af422a3fb924 Add purple_util_write_data_to_*_file declarations
qarkai <qarkai@gmail.com>
parents: 38870
diff changeset
357 * Returns: TRUE if the file was written successfully. FALSE otherwise.
af422a3fb924 Add purple_util_write_data_to_*_file declarations
qarkai <qarkai@gmail.com>
parents: 38870
diff changeset
358 */
38874
0fc4ba7fa2be Make XDG dir structure inside custom user dir
qarkai <qarkai@gmail.com>
parents: 38872
diff changeset
359 gboolean
0fc4ba7fa2be Make XDG dir structure inside custom user dir
qarkai <qarkai@gmail.com>
parents: 38872
diff changeset
360 purple_util_write_data_to_data_file(const char *filename, const char *data, gssize size);
38872
af422a3fb924 Add purple_util_write_data_to_*_file declarations
qarkai <qarkai@gmail.com>
parents: 38870
diff changeset
361
af422a3fb924 Add purple_util_write_data_to_*_file declarations
qarkai <qarkai@gmail.com>
parents: 38870
diff changeset
362 /**
35400
a22531410e3f Convert docs from doxygen to gtk-doc format for request.h and util.h
Ankit Vani <a@nevitus.org>
parents: 35394
diff changeset
363 * purple_util_write_data_to_file_absolute:
35393
00f876b129bc Initial replacements for gtk-doc style comments
Ankit Vani <a@nevitus.org>
parents: 35265
diff changeset
364 * @filename_full: Filename to write to
38891
f59bb8304c21 Fix some functions descriptions
qarkai <qarkai@gmail.com>
parents: 38890
diff changeset
365 * @data: A string of data to write.
35393
00f876b129bc Initial replacements for gtk-doc style comments
Ankit Vani <a@nevitus.org>
parents: 35265
diff changeset
366 * @size: The size of the data to save. If data is
19501
4c14c89dcf02 - Add purple_util_write_data_to_file_absolute; glib's
William Ehlhardt <williamehlhardt@gmail.com>
parents: 18413
diff changeset
367 * null-terminated you can pass in -1.
4c14c89dcf02 - Add purple_util_write_data_to_file_absolute; glib's
William Ehlhardt <williamehlhardt@gmail.com>
parents: 18413
diff changeset
368 *
4c14c89dcf02 - Add purple_util_write_data_to_file_absolute; glib's
William Ehlhardt <williamehlhardt@gmail.com>
parents: 18413
diff changeset
369 * Write data to a file using the absolute path.
4c14c89dcf02 - Add purple_util_write_data_to_file_absolute; glib's
William Ehlhardt <williamehlhardt@gmail.com>
parents: 18413
diff changeset
370 *
4c14c89dcf02 - Add purple_util_write_data_to_file_absolute; glib's
William Ehlhardt <williamehlhardt@gmail.com>
parents: 18413
diff changeset
371 * This exists for Glib backwards compatibility reasons.
4c14c89dcf02 - Add purple_util_write_data_to_file_absolute; glib's
William Ehlhardt <williamehlhardt@gmail.com>
parents: 18413
diff changeset
372 *
35471
a23769351b31 Remove @see
Ankit Vani <a@nevitus.org>
parents: 35468
diff changeset
373 * See purple_util_write_data_to_file()
19501
4c14c89dcf02 - Add purple_util_write_data_to_file_absolute; glib's
William Ehlhardt <williamehlhardt@gmail.com>
parents: 18413
diff changeset
374 *
35471
a23769351b31 Remove @see
Ankit Vani <a@nevitus.org>
parents: 35468
diff changeset
375 * Returns: TRUE if the file was written successfully. FALSE otherwise.
19501
4c14c89dcf02 - Add purple_util_write_data_to_file_absolute; glib's
William Ehlhardt <williamehlhardt@gmail.com>
parents: 18413
diff changeset
376 */
35471
a23769351b31 Remove @see
Ankit Vani <a@nevitus.org>
parents: 35468
diff changeset
377 /* TODO: Remove this function (use g_file_set_contents instead) when 3.0.0
a23769351b31 Remove @see
Ankit Vani <a@nevitus.org>
parents: 35468
diff changeset
378 * rolls around. */
19501
4c14c89dcf02 - Add purple_util_write_data_to_file_absolute; glib's
William Ehlhardt <williamehlhardt@gmail.com>
parents: 18413
diff changeset
379 gboolean
20226
282d0c1feb58 applied changes from 1095e0c294d15e95c8909d270748c5253226bfe6
Luke Schierer <lschiere@pidgin.im>
parents: 20147
diff changeset
380 purple_util_write_data_to_file_absolute(const char *filename_full, const char *data, gssize size);
19501
4c14c89dcf02 - Add purple_util_write_data_to_file_absolute; glib's
William Ehlhardt <williamehlhardt@gmail.com>
parents: 18413
diff changeset
381
4c14c89dcf02 - Add purple_util_write_data_to_file_absolute; glib's
William Ehlhardt <williamehlhardt@gmail.com>
parents: 18413
diff changeset
382 /**
35400
a22531410e3f Convert docs from doxygen to gtk-doc format for request.h and util.h
Ankit Vani <a@nevitus.org>
parents: 35394
diff changeset
383 * purple_util_read_xml_from_file:
35393
00f876b129bc Initial replacements for gtk-doc style comments
Ankit Vani <a@nevitus.org>
parents: 35265
diff changeset
384 * @filename: The basename of the file to open in the purple_user_dir.
00f876b129bc Initial replacements for gtk-doc style comments
Ankit Vani <a@nevitus.org>
parents: 35265
diff changeset
385 * @description: A very short description of the contents of this
10425
d82cef15da95 [gaim-migrate @ 11677]
Mark Doliner <markdoliner@pidgin.im>
parents: 10415
diff changeset
386 * file. This is used in error messages shown to the
d82cef15da95 [gaim-migrate @ 11677]
Mark Doliner <markdoliner@pidgin.im>
parents: 10415
diff changeset
387 * user when the file can not be opened. For example,
d82cef15da95 [gaim-migrate @ 11677]
Mark Doliner <markdoliner@pidgin.im>
parents: 10415
diff changeset
388 * "preferences," or "buddy pounces."
d82cef15da95 [gaim-migrate @ 11677]
Mark Doliner <markdoliner@pidgin.im>
parents: 10415
diff changeset
389 *
35400
a22531410e3f Convert docs from doxygen to gtk-doc format for request.h and util.h
Ankit Vani <a@nevitus.org>
parents: 35394
diff changeset
390 * Read the contents of a given file and parse the results into an
a22531410e3f Convert docs from doxygen to gtk-doc format for request.h and util.h
Ankit Vani <a@nevitus.org>
parents: 35394
diff changeset
391 * PurpleXmlNode tree structure. This is intended to be used to read
a22531410e3f Convert docs from doxygen to gtk-doc format for request.h and util.h
Ankit Vani <a@nevitus.org>
parents: 35394
diff changeset
392 * Purple's configuration xml files (prefs.xml, pounces.xml, etc.)
a22531410e3f Convert docs from doxygen to gtk-doc format for request.h and util.h
Ankit Vani <a@nevitus.org>
parents: 35394
diff changeset
393 *
35393
00f876b129bc Initial replacements for gtk-doc style comments
Ankit Vani <a@nevitus.org>
parents: 35265
diff changeset
394 * Returns: An PurpleXmlNode tree of the contents of the given file. Or NULL, if
10425
d82cef15da95 [gaim-migrate @ 11677]
Mark Doliner <markdoliner@pidgin.im>
parents: 10415
diff changeset
395 * the file does not exist or there was an error reading the file.
38879
2eb179d4f7ac Deprecate purple_user_dir(), purple_util_write_data_to_file(), purple_util_read_xml_from_file()
qarkai <qarkai@gmail.com>
parents: 38878
diff changeset
396 *
2eb179d4f7ac Deprecate purple_user_dir(), purple_util_write_data_to_file(), purple_util_read_xml_from_file()
qarkai <qarkai@gmail.com>
parents: 38878
diff changeset
397 * Deprecated: Use purple_util_read_xml_from_cache_file(),
2eb179d4f7ac Deprecate purple_user_dir(), purple_util_write_data_to_file(), purple_util_read_xml_from_file()
qarkai <qarkai@gmail.com>
parents: 38878
diff changeset
398 * purple_util_read_xml_from_config_file() or
2eb179d4f7ac Deprecate purple_user_dir(), purple_util_write_data_to_file(), purple_util_read_xml_from_file()
qarkai <qarkai@gmail.com>
parents: 38878
diff changeset
399 * purple_util_read_xml_from_data_file() instead.
10425
d82cef15da95 [gaim-migrate @ 11677]
Mark Doliner <markdoliner@pidgin.im>
parents: 10415
diff changeset
400 */
40560
6af4d993c8e5 Fix build with clang 11.0.0
Steve Wills <steve@mouf.net>
parents: 40559
diff changeset
401 G_DEPRECATED_FOR(purple_util_read_xml_from_cache_file or purple_util_read_xml_from_config_file or purple_util_read_xml_from_data_file)
34935
686fa55b0deb Replaced xmlnode with PurpleXmlNode, and xmlnode_* API with purple_xmlnode_* API
Ankit Vani <a@nevitus.org>
parents: 34822
diff changeset
402 PurpleXmlNode *purple_util_read_xml_from_file(const char *filename,
10425
d82cef15da95 [gaim-migrate @ 11677]
Mark Doliner <markdoliner@pidgin.im>
parents: 10415
diff changeset
403 const char *description);
d82cef15da95 [gaim-migrate @ 11677]
Mark Doliner <markdoliner@pidgin.im>
parents: 10415
diff changeset
404
d82cef15da95 [gaim-migrate @ 11677]
Mark Doliner <markdoliner@pidgin.im>
parents: 10415
diff changeset
405 /**
38877
4e9c691a1d2d Add functions for reading XML files from XDG dirs
qarkai <qarkai@gmail.com>
parents: 38874
diff changeset
406 * purple_util_read_xml_from_cache_file:
4e9c691a1d2d Add functions for reading XML files from XDG dirs
qarkai <qarkai@gmail.com>
parents: 38874
diff changeset
407 * @filename: The basename of the file to open in the purple_cache_dir.
4e9c691a1d2d Add functions for reading XML files from XDG dirs
qarkai <qarkai@gmail.com>
parents: 38874
diff changeset
408 * @description: A very short description of the contents of this
4e9c691a1d2d Add functions for reading XML files from XDG dirs
qarkai <qarkai@gmail.com>
parents: 38874
diff changeset
409 * file. This is used in error messages shown to the
4e9c691a1d2d Add functions for reading XML files from XDG dirs
qarkai <qarkai@gmail.com>
parents: 38874
diff changeset
410 * user when the file can not be opened. For example,
4e9c691a1d2d Add functions for reading XML files from XDG dirs
qarkai <qarkai@gmail.com>
parents: 38874
diff changeset
411 * "preferences," or "buddy pounces."
4e9c691a1d2d Add functions for reading XML files from XDG dirs
qarkai <qarkai@gmail.com>
parents: 38874
diff changeset
412 *
4e9c691a1d2d Add functions for reading XML files from XDG dirs
qarkai <qarkai@gmail.com>
parents: 38874
diff changeset
413 * Read the contents of a given file and parse the results into an
4e9c691a1d2d Add functions for reading XML files from XDG dirs
qarkai <qarkai@gmail.com>
parents: 38874
diff changeset
414 * PurpleXmlNode tree structure. This is intended to be used to read
4e9c691a1d2d Add functions for reading XML files from XDG dirs
qarkai <qarkai@gmail.com>
parents: 38874
diff changeset
415 * Purple's cache xml files (xmpp-caps.xml, etc.)
4e9c691a1d2d Add functions for reading XML files from XDG dirs
qarkai <qarkai@gmail.com>
parents: 38874
diff changeset
416 *
4e9c691a1d2d Add functions for reading XML files from XDG dirs
qarkai <qarkai@gmail.com>
parents: 38874
diff changeset
417 * Returns: An PurpleXmlNode tree of the contents of the given file. Or NULL, if
4e9c691a1d2d Add functions for reading XML files from XDG dirs
qarkai <qarkai@gmail.com>
parents: 38874
diff changeset
418 * the file does not exist or there was an error reading the file.
4e9c691a1d2d Add functions for reading XML files from XDG dirs
qarkai <qarkai@gmail.com>
parents: 38874
diff changeset
419 */
4e9c691a1d2d Add functions for reading XML files from XDG dirs
qarkai <qarkai@gmail.com>
parents: 38874
diff changeset
420 PurpleXmlNode *
4e9c691a1d2d Add functions for reading XML files from XDG dirs
qarkai <qarkai@gmail.com>
parents: 38874
diff changeset
421 purple_util_read_xml_from_cache_file(const char *filename, const char *description);
4e9c691a1d2d Add functions for reading XML files from XDG dirs
qarkai <qarkai@gmail.com>
parents: 38874
diff changeset
422
4e9c691a1d2d Add functions for reading XML files from XDG dirs
qarkai <qarkai@gmail.com>
parents: 38874
diff changeset
423 /**
4e9c691a1d2d Add functions for reading XML files from XDG dirs
qarkai <qarkai@gmail.com>
parents: 38874
diff changeset
424 * purple_util_read_xml_from_config_file:
4e9c691a1d2d Add functions for reading XML files from XDG dirs
qarkai <qarkai@gmail.com>
parents: 38874
diff changeset
425 * @filename: The basename of the file to open in the purple_config_dir.
4e9c691a1d2d Add functions for reading XML files from XDG dirs
qarkai <qarkai@gmail.com>
parents: 38874
diff changeset
426 * @description: A very short description of the contents of this
4e9c691a1d2d Add functions for reading XML files from XDG dirs
qarkai <qarkai@gmail.com>
parents: 38874
diff changeset
427 * file. This is used in error messages shown to the
4e9c691a1d2d Add functions for reading XML files from XDG dirs
qarkai <qarkai@gmail.com>
parents: 38874
diff changeset
428 * user when the file can not be opened. For example,
4e9c691a1d2d Add functions for reading XML files from XDG dirs
qarkai <qarkai@gmail.com>
parents: 38874
diff changeset
429 * "preferences," or "buddy pounces."
4e9c691a1d2d Add functions for reading XML files from XDG dirs
qarkai <qarkai@gmail.com>
parents: 38874
diff changeset
430 *
4e9c691a1d2d Add functions for reading XML files from XDG dirs
qarkai <qarkai@gmail.com>
parents: 38874
diff changeset
431 * Read the contents of a given file and parse the results into an
4e9c691a1d2d Add functions for reading XML files from XDG dirs
qarkai <qarkai@gmail.com>
parents: 38874
diff changeset
432 * PurpleXmlNode tree structure. This is intended to be used to read
4e9c691a1d2d Add functions for reading XML files from XDG dirs
qarkai <qarkai@gmail.com>
parents: 38874
diff changeset
433 * Purple's config xml files (prefs.xml, pounces.xml, etc.)
4e9c691a1d2d Add functions for reading XML files from XDG dirs
qarkai <qarkai@gmail.com>
parents: 38874
diff changeset
434 *
4e9c691a1d2d Add functions for reading XML files from XDG dirs
qarkai <qarkai@gmail.com>
parents: 38874
diff changeset
435 * Returns: An PurpleXmlNode tree of the contents of the given file. Or NULL, if
4e9c691a1d2d Add functions for reading XML files from XDG dirs
qarkai <qarkai@gmail.com>
parents: 38874
diff changeset
436 * the file does not exist or there was an error reading the file.
4e9c691a1d2d Add functions for reading XML files from XDG dirs
qarkai <qarkai@gmail.com>
parents: 38874
diff changeset
437 */
4e9c691a1d2d Add functions for reading XML files from XDG dirs
qarkai <qarkai@gmail.com>
parents: 38874
diff changeset
438 PurpleXmlNode *
4e9c691a1d2d Add functions for reading XML files from XDG dirs
qarkai <qarkai@gmail.com>
parents: 38874
diff changeset
439 purple_util_read_xml_from_config_file(const char *filename, const char *description);
4e9c691a1d2d Add functions for reading XML files from XDG dirs
qarkai <qarkai@gmail.com>
parents: 38874
diff changeset
440
4e9c691a1d2d Add functions for reading XML files from XDG dirs
qarkai <qarkai@gmail.com>
parents: 38874
diff changeset
441 /**
4e9c691a1d2d Add functions for reading XML files from XDG dirs
qarkai <qarkai@gmail.com>
parents: 38874
diff changeset
442 * purple_util_read_xml_from_data_file:
4e9c691a1d2d Add functions for reading XML files from XDG dirs
qarkai <qarkai@gmail.com>
parents: 38874
diff changeset
443 * @filename: The basename of the file to open in the purple_data_dir.
4e9c691a1d2d Add functions for reading XML files from XDG dirs
qarkai <qarkai@gmail.com>
parents: 38874
diff changeset
444 * @description: A very short description of the contents of this
4e9c691a1d2d Add functions for reading XML files from XDG dirs
qarkai <qarkai@gmail.com>
parents: 38874
diff changeset
445 * file. This is used in error messages shown to the
4e9c691a1d2d Add functions for reading XML files from XDG dirs
qarkai <qarkai@gmail.com>
parents: 38874
diff changeset
446 * user when the file can not be opened. For example,
4e9c691a1d2d Add functions for reading XML files from XDG dirs
qarkai <qarkai@gmail.com>
parents: 38874
diff changeset
447 * "preferences," or "buddy pounces."
4e9c691a1d2d Add functions for reading XML files from XDG dirs
qarkai <qarkai@gmail.com>
parents: 38874
diff changeset
448 *
4e9c691a1d2d Add functions for reading XML files from XDG dirs
qarkai <qarkai@gmail.com>
parents: 38874
diff changeset
449 * Read the contents of a given file and parse the results into an
4e9c691a1d2d Add functions for reading XML files from XDG dirs
qarkai <qarkai@gmail.com>
parents: 38874
diff changeset
450 * PurpleXmlNode tree structure. This is intended to be used to read
4e9c691a1d2d Add functions for reading XML files from XDG dirs
qarkai <qarkai@gmail.com>
parents: 38874
diff changeset
451 * Purple's cache xml files (accounts.xml, etc.)
4e9c691a1d2d Add functions for reading XML files from XDG dirs
qarkai <qarkai@gmail.com>
parents: 38874
diff changeset
452 *
4e9c691a1d2d Add functions for reading XML files from XDG dirs
qarkai <qarkai@gmail.com>
parents: 38874
diff changeset
453 * Returns: An PurpleXmlNode tree of the contents of the given file. Or NULL, if
4e9c691a1d2d Add functions for reading XML files from XDG dirs
qarkai <qarkai@gmail.com>
parents: 38874
diff changeset
454 * the file does not exist or there was an error reading the file.
4e9c691a1d2d Add functions for reading XML files from XDG dirs
qarkai <qarkai@gmail.com>
parents: 38874
diff changeset
455 */
4e9c691a1d2d Add functions for reading XML files from XDG dirs
qarkai <qarkai@gmail.com>
parents: 38874
diff changeset
456 PurpleXmlNode *
4e9c691a1d2d Add functions for reading XML files from XDG dirs
qarkai <qarkai@gmail.com>
parents: 38874
diff changeset
457 purple_util_read_xml_from_data_file(const char *filename, const char *description);
4e9c691a1d2d Add functions for reading XML files from XDG dirs
qarkai <qarkai@gmail.com>
parents: 38874
diff changeset
458
4e9c691a1d2d Add functions for reading XML files from XDG dirs
qarkai <qarkai@gmail.com>
parents: 38874
diff changeset
459 /**
35400
a22531410e3f Convert docs from doxygen to gtk-doc format for request.h and util.h
Ankit Vani <a@nevitus.org>
parents: 35394
diff changeset
460 * purple_mkstemp:
a22531410e3f Convert docs from doxygen to gtk-doc format for request.h and util.h
Ankit Vani <a@nevitus.org>
parents: 35394
diff changeset
461 * @path: The returned path to the temp file.
a22531410e3f Convert docs from doxygen to gtk-doc format for request.h and util.h
Ankit Vani <a@nevitus.org>
parents: 35394
diff changeset
462 * @binary: Text or binary, for platforms where it matters.
a22531410e3f Convert docs from doxygen to gtk-doc format for request.h and util.h
Ankit Vani <a@nevitus.org>
parents: 35394
diff changeset
463 *
7108
82655fa54acb [gaim-migrate @ 7673]
Christian Hammond <chipx86@chipx86.com>
parents: 7107
diff changeset
464 * Creates a temporary file and returns a file pointer to it.
82655fa54acb [gaim-migrate @ 7673]
Christian Hammond <chipx86@chipx86.com>
parents: 7107
diff changeset
465 *
82655fa54acb [gaim-migrate @ 7673]
Christian Hammond <chipx86@chipx86.com>
parents: 7107
diff changeset
466 * This is like mkstemp(), but returns a file pointer and uses a
82655fa54acb [gaim-migrate @ 7673]
Christian Hammond <chipx86@chipx86.com>
parents: 7107
diff changeset
467 * pre-set template. It uses the semantics of tempnam() for the
82655fa54acb [gaim-migrate @ 7673]
Christian Hammond <chipx86@chipx86.com>
parents: 7107
diff changeset
468 * directory to use and allocates the space for the file path.
82655fa54acb [gaim-migrate @ 7673]
Christian Hammond <chipx86@chipx86.com>
parents: 7107
diff changeset
469 *
82655fa54acb [gaim-migrate @ 7673]
Christian Hammond <chipx86@chipx86.com>
parents: 7107
diff changeset
470 * The caller is responsible for closing the file and removing it when
35400
a22531410e3f Convert docs from doxygen to gtk-doc format for request.h and util.h
Ankit Vani <a@nevitus.org>
parents: 35394
diff changeset
471 * done, as well as freeing the space pointed to by @path with
7108
82655fa54acb [gaim-migrate @ 7673]
Christian Hammond <chipx86@chipx86.com>
parents: 7107
diff changeset
472 * g_free().
82655fa54acb [gaim-migrate @ 7673]
Christian Hammond <chipx86@chipx86.com>
parents: 7107
diff changeset
473 *
35393
00f876b129bc Initial replacements for gtk-doc style comments
Ankit Vani <a@nevitus.org>
parents: 35265
diff changeset
474 * Returns: A file pointer to the temporary file, or %NULL on failure.
7108
82655fa54acb [gaim-migrate @ 7673]
Christian Hammond <chipx86@chipx86.com>
parents: 7107
diff changeset
475 */
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15707
diff changeset
476 FILE *purple_mkstemp(char **path, gboolean binary);
7108
82655fa54acb [gaim-migrate @ 7673]
Christian Hammond <chipx86@chipx86.com>
parents: 7107
diff changeset
477
16437
7ff7c3405ea2 Rework the buddy icon subsystem to use the imgstore subsystem, and modify the
Richard Laager <rlaager@pidgin.im>
parents: 16262
diff changeset
478
7ff7c3405ea2 Rework the buddy icon subsystem to use the imgstore subsystem, and modify the
Richard Laager <rlaager@pidgin.im>
parents: 16262
diff changeset
479 /**************************************************************************/
35472
474e26199560 Removed @name
Ankit Vani <a@nevitus.org>
parents: 35471
diff changeset
480 /* Environment Detection Functions */
16437
7ff7c3405ea2 Rework the buddy icon subsystem to use the imgstore subsystem, and modify the
Richard Laager <rlaager@pidgin.im>
parents: 16262
diff changeset
481 /**************************************************************************/
22443
7b8772af6bb7 Apply the custom smiley patches from #1187, from Jorge Villaseño (Masca) and
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 22133
diff changeset
482
7b8772af6bb7 Apply the custom smiley patches from #1187, from Jorge Villaseño (Masca) and
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 22133
diff changeset
483 /**
35400
a22531410e3f Convert docs from doxygen to gtk-doc format for request.h and util.h
Ankit Vani <a@nevitus.org>
parents: 35394
diff changeset
484 * purple_program_is_valid:
a22531410e3f Convert docs from doxygen to gtk-doc format for request.h and util.h
Ankit Vani <a@nevitus.org>
parents: 35394
diff changeset
485 * @program: The file name of the application.
7108
82655fa54acb [gaim-migrate @ 7673]
Christian Hammond <chipx86@chipx86.com>
parents: 7107
diff changeset
486 *
82655fa54acb [gaim-migrate @ 7673]
Christian Hammond <chipx86@chipx86.com>
parents: 7107
diff changeset
487 * Checks if the given program name is valid and executable.
82655fa54acb [gaim-migrate @ 7673]
Christian Hammond <chipx86@chipx86.com>
parents: 7107
diff changeset
488 *
35393
00f876b129bc Initial replacements for gtk-doc style comments
Ankit Vani <a@nevitus.org>
parents: 35265
diff changeset
489 * Returns: TRUE if the program is runable.
7108
82655fa54acb [gaim-migrate @ 7673]
Christian Hammond <chipx86@chipx86.com>
parents: 7107
diff changeset
490 */
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15707
diff changeset
491 gboolean purple_program_is_valid(const char *program);
7108
82655fa54acb [gaim-migrate @ 7673]
Christian Hammond <chipx86@chipx86.com>
parents: 7107
diff changeset
492
82655fa54acb [gaim-migrate @ 7673]
Christian Hammond <chipx86@chipx86.com>
parents: 7107
diff changeset
493 /**
35400
a22531410e3f Convert docs from doxygen to gtk-doc format for request.h and util.h
Ankit Vani <a@nevitus.org>
parents: 35394
diff changeset
494 * purple_running_gnome:
a22531410e3f Convert docs from doxygen to gtk-doc format for request.h and util.h
Ankit Vani <a@nevitus.org>
parents: 35394
diff changeset
495 *
12483
38fc67810cdb [gaim-migrate @ 14795]
Richard Laager <rlaager@pidgin.im>
parents: 12106
diff changeset
496 * Check if running GNOME.
11878
4c2661df91bb [gaim-migrate @ 14169]
Sean Egan <seanegan@pidgin.im>
parents: 11552
diff changeset
497 *
35393
00f876b129bc Initial replacements for gtk-doc style comments
Ankit Vani <a@nevitus.org>
parents: 35265
diff changeset
498 * Returns: TRUE if running GNOME, FALSE otherwise.
11878
4c2661df91bb [gaim-migrate @ 14169]
Sean Egan <seanegan@pidgin.im>
parents: 11552
diff changeset
499 */
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15707
diff changeset
500 gboolean purple_running_gnome(void);
11878
4c2661df91bb [gaim-migrate @ 14169]
Sean Egan <seanegan@pidgin.im>
parents: 11552
diff changeset
501
4c2661df91bb [gaim-migrate @ 14169]
Sean Egan <seanegan@pidgin.im>
parents: 11552
diff changeset
502 /**
35400
a22531410e3f Convert docs from doxygen to gtk-doc format for request.h and util.h
Ankit Vani <a@nevitus.org>
parents: 35394
diff changeset
503 * purple_running_kde:
a22531410e3f Convert docs from doxygen to gtk-doc format for request.h and util.h
Ankit Vani <a@nevitus.org>
parents: 35394
diff changeset
504 *
12483
38fc67810cdb [gaim-migrate @ 14795]
Richard Laager <rlaager@pidgin.im>
parents: 12106
diff changeset
505 * Check if running KDE.
38fc67810cdb [gaim-migrate @ 14795]
Richard Laager <rlaager@pidgin.im>
parents: 12106
diff changeset
506 *
35393
00f876b129bc Initial replacements for gtk-doc style comments
Ankit Vani <a@nevitus.org>
parents: 35265
diff changeset
507 * Returns: TRUE if running KDE, FALSE otherwise.
12483
38fc67810cdb [gaim-migrate @ 14795]
Richard Laager <rlaager@pidgin.im>
parents: 12106
diff changeset
508 */
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15707
diff changeset
509 gboolean purple_running_kde(void);
12483
38fc67810cdb [gaim-migrate @ 14795]
Richard Laager <rlaager@pidgin.im>
parents: 12106
diff changeset
510
38fc67810cdb [gaim-migrate @ 14795]
Richard Laager <rlaager@pidgin.im>
parents: 12106
diff changeset
511 /**
35400
a22531410e3f Convert docs from doxygen to gtk-doc format for request.h and util.h
Ankit Vani <a@nevitus.org>
parents: 35394
diff changeset
512 * purple_running_osx:
a22531410e3f Convert docs from doxygen to gtk-doc format for request.h and util.h
Ankit Vani <a@nevitus.org>
parents: 35394
diff changeset
513 *
14708
6006e069317c [gaim-migrate @ 17392]
Evan Schoenberg <evands@pidgin.im>
parents: 14416
diff changeset
514 * Check if running OS X.
6006e069317c [gaim-migrate @ 17392]
Evan Schoenberg <evands@pidgin.im>
parents: 14416
diff changeset
515 *
35393
00f876b129bc Initial replacements for gtk-doc style comments
Ankit Vani <a@nevitus.org>
parents: 35265
diff changeset
516 * Returns: TRUE if running OS X, FALSE otherwise.
14708
6006e069317c [gaim-migrate @ 17392]
Evan Schoenberg <evands@pidgin.im>
parents: 14416
diff changeset
517 */
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15707
diff changeset
518 gboolean purple_running_osx(void);
14708
6006e069317c [gaim-migrate @ 17392]
Evan Schoenberg <evands@pidgin.im>
parents: 14416
diff changeset
519
6006e069317c [gaim-migrate @ 17392]
Evan Schoenberg <evands@pidgin.im>
parents: 14416
diff changeset
520 /**
35400
a22531410e3f Convert docs from doxygen to gtk-doc format for request.h and util.h
Ankit Vani <a@nevitus.org>
parents: 35394
diff changeset
521 * purple_socket_get_family:
a22531410e3f Convert docs from doxygen to gtk-doc format for request.h and util.h
Ankit Vani <a@nevitus.org>
parents: 35394
diff changeset
522 * @fd: The socket file descriptor.
30027
2ab6e591cf72 Add network listen functions that accept a family argument (AF_INET(6?)).
Paul Aurich <darkrain42@pidgin.im>
parents: 29935
diff changeset
523 *
2ab6e591cf72 Add network listen functions that accept a family argument (AF_INET(6?)).
Paul Aurich <darkrain42@pidgin.im>
parents: 29935
diff changeset
524 * Returns the address family of a socket.
2ab6e591cf72 Add network listen functions that accept a family argument (AF_INET(6?)).
Paul Aurich <darkrain42@pidgin.im>
parents: 29935
diff changeset
525 *
35393
00f876b129bc Initial replacements for gtk-doc style comments
Ankit Vani <a@nevitus.org>
parents: 35265
diff changeset
526 * Returns: The address family of the socket (AF_INET, AF_INET6, etc) or -1
30030
f217427b4035 Oops, I forgot to save this before committing.
Paul Aurich <darkrain42@pidgin.im>
parents: 30027
diff changeset
527 * on error.
30027
2ab6e591cf72 Add network listen functions that accept a family argument (AF_INET(6?)).
Paul Aurich <darkrain42@pidgin.im>
parents: 29935
diff changeset
528 */
2ab6e591cf72 Add network listen functions that accept a family argument (AF_INET(6?)).
Paul Aurich <darkrain42@pidgin.im>
parents: 29935
diff changeset
529 int purple_socket_get_family(int fd);
2ab6e591cf72 Add network listen functions that accept a family argument (AF_INET(6?)).
Paul Aurich <darkrain42@pidgin.im>
parents: 29935
diff changeset
530
2ab6e591cf72 Add network listen functions that accept a family argument (AF_INET(6?)).
Paul Aurich <darkrain42@pidgin.im>
parents: 29935
diff changeset
531 /**
35400
a22531410e3f Convert docs from doxygen to gtk-doc format for request.h and util.h
Ankit Vani <a@nevitus.org>
parents: 35394
diff changeset
532 * purple_socket_speaks_ipv4:
a22531410e3f Convert docs from doxygen to gtk-doc format for request.h and util.h
Ankit Vani <a@nevitus.org>
parents: 35394
diff changeset
533 * @fd: The socket file descriptor
a22531410e3f Convert docs from doxygen to gtk-doc format for request.h and util.h
Ankit Vani <a@nevitus.org>
parents: 35394
diff changeset
534 *
30027
2ab6e591cf72 Add network listen functions that accept a family argument (AF_INET(6?)).
Paul Aurich <darkrain42@pidgin.im>
parents: 29935
diff changeset
535 * Returns TRUE if a socket is capable of speaking IPv4.
2ab6e591cf72 Add network listen functions that accept a family argument (AF_INET(6?)).
Paul Aurich <darkrain42@pidgin.im>
parents: 29935
diff changeset
536 *
2ab6e591cf72 Add network listen functions that accept a family argument (AF_INET(6?)).
Paul Aurich <darkrain42@pidgin.im>
parents: 29935
diff changeset
537 * This is the case for IPv4 sockets and, on some systems, IPv6 sockets
2ab6e591cf72 Add network listen functions that accept a family argument (AF_INET(6?)).
Paul Aurich <darkrain42@pidgin.im>
parents: 29935
diff changeset
538 * (due to the IPv4-mapped address functionality).
2ab6e591cf72 Add network listen functions that accept a family argument (AF_INET(6?)).
Paul Aurich <darkrain42@pidgin.im>
parents: 29935
diff changeset
539 *
35393
00f876b129bc Initial replacements for gtk-doc style comments
Ankit Vani <a@nevitus.org>
parents: 35265
diff changeset
540 * Returns: TRUE if a socket can speak IPv4.
30027
2ab6e591cf72 Add network listen functions that accept a family argument (AF_INET(6?)).
Paul Aurich <darkrain42@pidgin.im>
parents: 29935
diff changeset
541 */
2ab6e591cf72 Add network listen functions that accept a family argument (AF_INET(6?)).
Paul Aurich <darkrain42@pidgin.im>
parents: 29935
diff changeset
542 gboolean purple_socket_speaks_ipv4(int fd);
2ab6e591cf72 Add network listen functions that accept a family argument (AF_INET(6?)).
Paul Aurich <darkrain42@pidgin.im>
parents: 29935
diff changeset
543
7108
82655fa54acb [gaim-migrate @ 7673]
Christian Hammond <chipx86@chipx86.com>
parents: 7107
diff changeset
544
82655fa54acb [gaim-migrate @ 7673]
Christian Hammond <chipx86@chipx86.com>
parents: 7107
diff changeset
545 /**************************************************************************/
35472
474e26199560 Removed @name
Ankit Vani <a@nevitus.org>
parents: 35471
diff changeset
546 /* String Functions */
7108
82655fa54acb [gaim-migrate @ 7673]
Christian Hammond <chipx86@chipx86.com>
parents: 7107
diff changeset
547 /**************************************************************************/
82655fa54acb [gaim-migrate @ 7673]
Christian Hammond <chipx86@chipx86.com>
parents: 7107
diff changeset
548
82655fa54acb [gaim-migrate @ 7673]
Christian Hammond <chipx86@chipx86.com>
parents: 7107
diff changeset
549 /**
35400
a22531410e3f Convert docs from doxygen to gtk-doc format for request.h and util.h
Ankit Vani <a@nevitus.org>
parents: 35394
diff changeset
550 * purple_strequal:
a22531410e3f Convert docs from doxygen to gtk-doc format for request.h and util.h
Ankit Vani <a@nevitus.org>
parents: 35394
diff changeset
551 * @left: A string
a22531410e3f Convert docs from doxygen to gtk-doc format for request.h and util.h
Ankit Vani <a@nevitus.org>
parents: 35394
diff changeset
552 * @right: A string to compare with left
a22531410e3f Convert docs from doxygen to gtk-doc format for request.h and util.h
Ankit Vani <a@nevitus.org>
parents: 35394
diff changeset
553 *
25859
b42be7bb9dac Patch from Paul Aurich to add purple_strequal to help readability and simplicity of code. Ie, don't need to negate the value of strcmp, since this does a strcmp and does the negation for us
Paul Aurich <darkrain42@pidgin.im>
parents: 24072
diff changeset
554 * Tests two strings for equality.
b42be7bb9dac Patch from Paul Aurich to add purple_strequal to help readability and simplicity of code. Ie, don't need to negate the value of strcmp, since this does a strcmp and does the negation for us
Paul Aurich <darkrain42@pidgin.im>
parents: 24072
diff changeset
555 *
b42be7bb9dac Patch from Paul Aurich to add purple_strequal to help readability and simplicity of code. Ie, don't need to negate the value of strcmp, since this does a strcmp and does the negation for us
Paul Aurich <darkrain42@pidgin.im>
parents: 24072
diff changeset
556 * Unlike strcmp(), this function will not crash if one or both of the
35393
00f876b129bc Initial replacements for gtk-doc style comments
Ankit Vani <a@nevitus.org>
parents: 35265
diff changeset
557 * strings are %NULL.
25859
b42be7bb9dac Patch from Paul Aurich to add purple_strequal to help readability and simplicity of code. Ie, don't need to negate the value of strcmp, since this does a strcmp and does the negation for us
Paul Aurich <darkrain42@pidgin.im>
parents: 24072
diff changeset
558 *
35393
00f876b129bc Initial replacements for gtk-doc style comments
Ankit Vani <a@nevitus.org>
parents: 35265
diff changeset
559 * Returns: %TRUE if the strings are the same, else %FALSE.
25859
b42be7bb9dac Patch from Paul Aurich to add purple_strequal to help readability and simplicity of code. Ie, don't need to negate the value of strcmp, since this does a strcmp and does the negation for us
Paul Aurich <darkrain42@pidgin.im>
parents: 24072
diff changeset
560 */
39323
a1bec7e58cba libpurple: Change purple_strequal() to a static inline function
Mike Ruprecht <cmaiku@gmail.com>
parents: 39122
diff changeset
561 static inline gboolean
a1bec7e58cba libpurple: Change purple_strequal() to a static inline function
Mike Ruprecht <cmaiku@gmail.com>
parents: 39122
diff changeset
562 purple_strequal(const gchar *left, const gchar *right)
a1bec7e58cba libpurple: Change purple_strequal() to a static inline function
Mike Ruprecht <cmaiku@gmail.com>
parents: 39122
diff changeset
563 {
a1bec7e58cba libpurple: Change purple_strequal() to a static inline function
Mike Ruprecht <cmaiku@gmail.com>
parents: 39122
diff changeset
564 return (g_strcmp0(left, right) == 0);
a1bec7e58cba libpurple: Change purple_strequal() to a static inline function
Mike Ruprecht <cmaiku@gmail.com>
parents: 39122
diff changeset
565 }
25859
b42be7bb9dac Patch from Paul Aurich to add purple_strequal to help readability and simplicity of code. Ie, don't need to negate the value of strcmp, since this does a strcmp and does the negation for us
Paul Aurich <darkrain42@pidgin.im>
parents: 24072
diff changeset
566
b42be7bb9dac Patch from Paul Aurich to add purple_strequal to help readability and simplicity of code. Ie, don't need to negate the value of strcmp, since this does a strcmp and does the negation for us
Paul Aurich <darkrain42@pidgin.im>
parents: 24072
diff changeset
567 /**
35400
a22531410e3f Convert docs from doxygen to gtk-doc format for request.h and util.h
Ankit Vani <a@nevitus.org>
parents: 35394
diff changeset
568 * purple_normalize:
a22531410e3f Convert docs from doxygen to gtk-doc format for request.h and util.h
Ankit Vani <a@nevitus.org>
parents: 35394
diff changeset
569 * @account: The account the string belongs to, or NULL if you do
a22531410e3f Convert docs from doxygen to gtk-doc format for request.h and util.h
Ankit Vani <a@nevitus.org>
parents: 35394
diff changeset
570 * not know the account. If you use NULL, the string
a22531410e3f Convert docs from doxygen to gtk-doc format for request.h and util.h
Ankit Vani <a@nevitus.org>
parents: 35394
diff changeset
571 * will still be normalized, but if the protocol uses a
a22531410e3f Convert docs from doxygen to gtk-doc format for request.h and util.h
Ankit Vani <a@nevitus.org>
parents: 35394
diff changeset
572 * custom normalization function then the string may
a22531410e3f Convert docs from doxygen to gtk-doc format for request.h and util.h
Ankit Vani <a@nevitus.org>
parents: 35394
diff changeset
573 * not be normalized correctly.
a22531410e3f Convert docs from doxygen to gtk-doc format for request.h and util.h
Ankit Vani <a@nevitus.org>
parents: 35394
diff changeset
574 * @str: The string to normalize.
a22531410e3f Convert docs from doxygen to gtk-doc format for request.h and util.h
Ankit Vani <a@nevitus.org>
parents: 35394
diff changeset
575 *
7108
82655fa54acb [gaim-migrate @ 7673]
Christian Hammond <chipx86@chipx86.com>
parents: 7107
diff changeset
576 * Normalizes a string, so that it is suitable for comparison.
82655fa54acb [gaim-migrate @ 7673]
Christian Hammond <chipx86@chipx86.com>
parents: 7107
diff changeset
577 *
82655fa54acb [gaim-migrate @ 7673]
Christian Hammond <chipx86@chipx86.com>
parents: 7107
diff changeset
578 * The returned string will point to a static buffer, so if the
35468
65e7b4566de4 Fix HTML generation warnings by using DocBook tags
Ankit Vani <a@nevitus.org>
parents: 35467
diff changeset
579 * string is intended to be kept long-term, you <emphasis>must</emphasis>
7108
82655fa54acb [gaim-migrate @ 7673]
Christian Hammond <chipx86@chipx86.com>
parents: 7107
diff changeset
580 * g_strdup() it. Also, calling normalize() twice in the same line
82655fa54acb [gaim-migrate @ 7673]
Christian Hammond <chipx86@chipx86.com>
parents: 7107
diff changeset
581 * will lead to problems.
82655fa54acb [gaim-migrate @ 7673]
Christian Hammond <chipx86@chipx86.com>
parents: 7107
diff changeset
582 *
35393
00f876b129bc Initial replacements for gtk-doc style comments
Ankit Vani <a@nevitus.org>
parents: 35265
diff changeset
583 * Returns: A pointer to the normalized version stored in a static buffer.
7108
82655fa54acb [gaim-migrate @ 7673]
Christian Hammond <chipx86@chipx86.com>
parents: 7107
diff changeset
584 */
39514
9c7715998bbc Cleanup account.[ch] and status.[ch] to remove g_type_class_add_private and other cleans including remove const from accessors
Gary Kramlich <grim@reaperworld.com>
parents: 39479
diff changeset
585 const char *purple_normalize(PurpleAccount *account, const char *str);
7108
82655fa54acb [gaim-migrate @ 7673]
Christian Hammond <chipx86@chipx86.com>
parents: 7107
diff changeset
586
82655fa54acb [gaim-migrate @ 7673]
Christian Hammond <chipx86@chipx86.com>
parents: 7107
diff changeset
587 /**
35400
a22531410e3f Convert docs from doxygen to gtk-doc format for request.h and util.h
Ankit Vani <a@nevitus.org>
parents: 35394
diff changeset
588 * purple_normalize_nocase:
a22531410e3f Convert docs from doxygen to gtk-doc format for request.h and util.h
Ankit Vani <a@nevitus.org>
parents: 35394
diff changeset
589 * @account: The account the string belongs to.
a22531410e3f Convert docs from doxygen to gtk-doc format for request.h and util.h
Ankit Vani <a@nevitus.org>
parents: 35394
diff changeset
590 * @str: The string to normalize.
a22531410e3f Convert docs from doxygen to gtk-doc format for request.h and util.h
Ankit Vani <a@nevitus.org>
parents: 35394
diff changeset
591 *
11153
b5c721366f2d [gaim-migrate @ 13235]
Evan Schoenberg <evands@pidgin.im>
parents: 11137
diff changeset
592 * Normalizes a string, so that it is suitable for comparison.
b5c721366f2d [gaim-migrate @ 13235]
Evan Schoenberg <evands@pidgin.im>
parents: 11137
diff changeset
593 *
35400
a22531410e3f Convert docs from doxygen to gtk-doc format for request.h and util.h
Ankit Vani <a@nevitus.org>
parents: 35394
diff changeset
594 * This is one possible implementation for the protocol callback
11153
b5c721366f2d [gaim-migrate @ 13235]
Evan Schoenberg <evands@pidgin.im>
parents: 11137
diff changeset
595 * function "normalize." It returns a lowercase and UTF-8
b5c721366f2d [gaim-migrate @ 13235]
Evan Schoenberg <evands@pidgin.im>
parents: 11137
diff changeset
596 * normalized version of the string.
b5c721366f2d [gaim-migrate @ 13235]
Evan Schoenberg <evands@pidgin.im>
parents: 11137
diff changeset
597 *
35393
00f876b129bc Initial replacements for gtk-doc style comments
Ankit Vani <a@nevitus.org>
parents: 35265
diff changeset
598 * Returns: A pointer to the normalized version stored in a static buffer.
11153
b5c721366f2d [gaim-migrate @ 13235]
Evan Schoenberg <evands@pidgin.im>
parents: 11137
diff changeset
599 */
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15707
diff changeset
600 const char *purple_normalize_nocase(const PurpleAccount *account, const char *str);
11153
b5c721366f2d [gaim-migrate @ 13235]
Evan Schoenberg <evands@pidgin.im>
parents: 11137
diff changeset
601
b5c721366f2d [gaim-migrate @ 13235]
Evan Schoenberg <evands@pidgin.im>
parents: 11137
diff changeset
602 /**
35400
a22531410e3f Convert docs from doxygen to gtk-doc format for request.h and util.h
Ankit Vani <a@nevitus.org>
parents: 35394
diff changeset
603 * purple_validate:
37034
9d6765962b22 Initial replacements for this branch
Ankit Vani <a@nevitus.org>
parents: 37023
diff changeset
604 * @protocol: The protocol the string belongs to.
35393
00f876b129bc Initial replacements for gtk-doc style comments
Ankit Vani <a@nevitus.org>
parents: 35265
diff changeset
605 * @str: The string to validate.
33087
182da0516150 Libpurple: username validation support; Pidgin: use it in account setup dialog
Tomasz Wasilczyk <tomkiewicz@cpw.pidgin.im>
parents: 33051
diff changeset
606 *
35400
a22531410e3f Convert docs from doxygen to gtk-doc format for request.h and util.h
Ankit Vani <a@nevitus.org>
parents: 35394
diff changeset
607 * Checks, if a string is valid.
a22531410e3f Convert docs from doxygen to gtk-doc format for request.h and util.h
Ankit Vani <a@nevitus.org>
parents: 35394
diff changeset
608 *
35393
00f876b129bc Initial replacements for gtk-doc style comments
Ankit Vani <a@nevitus.org>
parents: 35265
diff changeset
609 * Returns: TRUE, if string is valid, otherwise FALSE.
33087
182da0516150 Libpurple: username validation support; Pidgin: use it in account setup dialog
Tomasz Wasilczyk <tomkiewicz@cpw.pidgin.im>
parents: 33051
diff changeset
610 */
36544
1bf8b6ef5aea Renamed PurplePluginProtocolInfo to PurpleProtocol
Ankit Vani <a@nevitus.org>
parents: 36543
diff changeset
611 gboolean purple_validate(const PurpleProtocol *protocol, const char *str);
33087
182da0516150 Libpurple: username validation support; Pidgin: use it in account setup dialog
Tomasz Wasilczyk <tomkiewicz@cpw.pidgin.im>
parents: 33051
diff changeset
612
182da0516150 Libpurple: username validation support; Pidgin: use it in account setup dialog
Tomasz Wasilczyk <tomkiewicz@cpw.pidgin.im>
parents: 33051
diff changeset
613 /**
35766
f29bb25cfbd8 Smileys: fill comments for old files
Tomasz Wasilczyk <twasilczyk@pidgin.im>
parents: 35734
diff changeset
614 * purple_str_has_caseprefix:
f29bb25cfbd8 Smileys: fill comments for old files
Tomasz Wasilczyk <twasilczyk@pidgin.im>
parents: 35734
diff changeset
615 * @s: The string to check.
f29bb25cfbd8 Smileys: fill comments for old files
Tomasz Wasilczyk <twasilczyk@pidgin.im>
parents: 35734
diff changeset
616 * @p: The prefix in question.
f29bb25cfbd8 Smileys: fill comments for old files
Tomasz Wasilczyk <twasilczyk@pidgin.im>
parents: 35734
diff changeset
617 *
f29bb25cfbd8 Smileys: fill comments for old files
Tomasz Wasilczyk <twasilczyk@pidgin.im>
parents: 35734
diff changeset
618 * Compares two strings to see if the first contains the second as
f29bb25cfbd8 Smileys: fill comments for old files
Tomasz Wasilczyk <twasilczyk@pidgin.im>
parents: 35734
diff changeset
619 * a proper case-insensitive prefix.
f29bb25cfbd8 Smileys: fill comments for old files
Tomasz Wasilczyk <twasilczyk@pidgin.im>
parents: 35734
diff changeset
620 *
f29bb25cfbd8 Smileys: fill comments for old files
Tomasz Wasilczyk <twasilczyk@pidgin.im>
parents: 35734
diff changeset
621 * Returns: %TRUE if @p is a prefix of @s, otherwise %FALSE.
f29bb25cfbd8 Smileys: fill comments for old files
Tomasz Wasilczyk <twasilczyk@pidgin.im>
parents: 35734
diff changeset
622 */
f29bb25cfbd8 Smileys: fill comments for old files
Tomasz Wasilczyk <twasilczyk@pidgin.im>
parents: 35734
diff changeset
623 gboolean
f29bb25cfbd8 Smileys: fill comments for old files
Tomasz Wasilczyk <twasilczyk@pidgin.im>
parents: 35734
diff changeset
624 purple_str_has_caseprefix(const gchar *s, const gchar *p);
35734
ddad7176a0ec Smiley manager: drag and drop
Tomasz Wasilczyk <twasilczyk@pidgin.im>
parents: 35487
diff changeset
625
7628
f76ce1d73e1c [gaim-migrate @ 8252]
Ethan Blanton <elb@pidgin.im>
parents: 7622
diff changeset
626 /**
35400
a22531410e3f Convert docs from doxygen to gtk-doc format for request.h and util.h
Ankit Vani <a@nevitus.org>
parents: 35394
diff changeset
627 * purple_strdup_withhtml:
a22531410e3f Convert docs from doxygen to gtk-doc format for request.h and util.h
Ankit Vani <a@nevitus.org>
parents: 35394
diff changeset
628 * @src: The source string.
a22531410e3f Convert docs from doxygen to gtk-doc format for request.h and util.h
Ankit Vani <a@nevitus.org>
parents: 35394
diff changeset
629 *
7108
82655fa54acb [gaim-migrate @ 7673]
Christian Hammond <chipx86@chipx86.com>
parents: 7107
diff changeset
630 * Duplicates a string and replaces all newline characters from the
82655fa54acb [gaim-migrate @ 7673]
Christian Hammond <chipx86@chipx86.com>
parents: 7107
diff changeset
631 * source string with HTML linebreaks.
82655fa54acb [gaim-migrate @ 7673]
Christian Hammond <chipx86@chipx86.com>
parents: 7107
diff changeset
632 *
35393
00f876b129bc Initial replacements for gtk-doc style comments
Ankit Vani <a@nevitus.org>
parents: 35265
diff changeset
633 * Returns: The new string. Must be g_free'd by the caller.
7108
82655fa54acb [gaim-migrate @ 7673]
Christian Hammond <chipx86@chipx86.com>
parents: 7107
diff changeset
634 */
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15707
diff changeset
635 gchar *purple_strdup_withhtml(const gchar *src);
7108
82655fa54acb [gaim-migrate @ 7673]
Christian Hammond <chipx86@chipx86.com>
parents: 7107
diff changeset
636
82655fa54acb [gaim-migrate @ 7673]
Christian Hammond <chipx86@chipx86.com>
parents: 7107
diff changeset
637 /**
35400
a22531410e3f Convert docs from doxygen to gtk-doc format for request.h and util.h
Ankit Vani <a@nevitus.org>
parents: 35394
diff changeset
638 * purple_str_add_cr:
a22531410e3f Convert docs from doxygen to gtk-doc format for request.h and util.h
Ankit Vani <a@nevitus.org>
parents: 35394
diff changeset
639 * @str: The source string.
7108
82655fa54acb [gaim-migrate @ 7673]
Christian Hammond <chipx86@chipx86.com>
parents: 7107
diff changeset
640 *
82655fa54acb [gaim-migrate @ 7673]
Christian Hammond <chipx86@chipx86.com>
parents: 7107
diff changeset
641 * Ensures that all linefeeds have a matching carriage return.
82655fa54acb [gaim-migrate @ 7673]
Christian Hammond <chipx86@chipx86.com>
parents: 7107
diff changeset
642 *
35393
00f876b129bc Initial replacements for gtk-doc style comments
Ankit Vani <a@nevitus.org>
parents: 35265
diff changeset
643 * Returns: The string with carriage returns.
7108
82655fa54acb [gaim-migrate @ 7673]
Christian Hammond <chipx86@chipx86.com>
parents: 7107
diff changeset
644 */
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15707
diff changeset
645 char *purple_str_add_cr(const char *str);
7108
82655fa54acb [gaim-migrate @ 7673]
Christian Hammond <chipx86@chipx86.com>
parents: 7107
diff changeset
646
82655fa54acb [gaim-migrate @ 7673]
Christian Hammond <chipx86@chipx86.com>
parents: 7107
diff changeset
647 /**
35400
a22531410e3f Convert docs from doxygen to gtk-doc format for request.h and util.h
Ankit Vani <a@nevitus.org>
parents: 35394
diff changeset
648 * purple_str_strip_char:
a22531410e3f Convert docs from doxygen to gtk-doc format for request.h and util.h
Ankit Vani <a@nevitus.org>
parents: 35394
diff changeset
649 * @str: The string to strip characters from.
a22531410e3f Convert docs from doxygen to gtk-doc format for request.h and util.h
Ankit Vani <a@nevitus.org>
parents: 35394
diff changeset
650 * @thechar: The character to strip from the given string.
a22531410e3f Convert docs from doxygen to gtk-doc format for request.h and util.h
Ankit Vani <a@nevitus.org>
parents: 35394
diff changeset
651 *
11920
be80617ec59b [gaim-migrate @ 14211]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 11878
diff changeset
652 * Strips all instances of the given character from the
be80617ec59b [gaim-migrate @ 14211]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 11878
diff changeset
653 * given string. The string is modified in place. This
be80617ec59b [gaim-migrate @ 14211]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 11878
diff changeset
654 * is useful for stripping new line characters, for example.
be80617ec59b [gaim-migrate @ 14211]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 11878
diff changeset
655 *
be80617ec59b [gaim-migrate @ 14211]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 11878
diff changeset
656 * Example usage:
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15707
diff changeset
657 * purple_str_strip_char(my_dumb_string, '\n');
7108
82655fa54acb [gaim-migrate @ 7673]
Christian Hammond <chipx86@chipx86.com>
parents: 7107
diff changeset
658 */
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15707
diff changeset
659 void purple_str_strip_char(char *str, char thechar);
11920
be80617ec59b [gaim-migrate @ 14211]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 11878
diff changeset
660
be80617ec59b [gaim-migrate @ 14211]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 11878
diff changeset
661 /**
35400
a22531410e3f Convert docs from doxygen to gtk-doc format for request.h and util.h
Ankit Vani <a@nevitus.org>
parents: 35394
diff changeset
662 * purple_util_chrreplace:
35393
00f876b129bc Initial replacements for gtk-doc style comments
Ankit Vani <a@nevitus.org>
parents: 35265
diff changeset
663 * @string: The string from which to replace stuff.
00f876b129bc Initial replacements for gtk-doc style comments
Ankit Vani <a@nevitus.org>
parents: 35265
diff changeset
664 * @delimiter: The character you want replaced.
00f876b129bc Initial replacements for gtk-doc style comments
Ankit Vani <a@nevitus.org>
parents: 35265
diff changeset
665 * @replacement: The character you want inserted in place
11920
be80617ec59b [gaim-migrate @ 14211]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 11878
diff changeset
666 * of the delimiting character.
35400
a22531410e3f Convert docs from doxygen to gtk-doc format for request.h and util.h
Ankit Vani <a@nevitus.org>
parents: 35394
diff changeset
667 *
11920
be80617ec59b [gaim-migrate @ 14211]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 11878
diff changeset
668 * Given a string, this replaces all instances of one character
be80617ec59b [gaim-migrate @ 14211]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 11878
diff changeset
669 * with another. This happens inline (the original string IS
be80617ec59b [gaim-migrate @ 14211]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 11878
diff changeset
670 * modified).
be80617ec59b [gaim-migrate @ 14211]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 11878
diff changeset
671 */
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15707
diff changeset
672 void purple_util_chrreplace(char *string, char delimiter,
11920
be80617ec59b [gaim-migrate @ 14211]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 11878
diff changeset
673 char replacement);
7108
82655fa54acb [gaim-migrate @ 7673]
Christian Hammond <chipx86@chipx86.com>
parents: 7107
diff changeset
674
82655fa54acb [gaim-migrate @ 7673]
Christian Hammond <chipx86@chipx86.com>
parents: 7107
diff changeset
675 /**
35400
a22531410e3f Convert docs from doxygen to gtk-doc format for request.h and util.h
Ankit Vani <a@nevitus.org>
parents: 35394
diff changeset
676 * purple_strreplace:
35393
00f876b129bc Initial replacements for gtk-doc style comments
Ankit Vani <a@nevitus.org>
parents: 35265
diff changeset
677 * @string: The string from which to replace stuff.
00f876b129bc Initial replacements for gtk-doc style comments
Ankit Vani <a@nevitus.org>
parents: 35265
diff changeset
678 * @delimiter: The substring you want replaced.
00f876b129bc Initial replacements for gtk-doc style comments
Ankit Vani <a@nevitus.org>
parents: 35265
diff changeset
679 * @replacement: The substring you want inserted in place
7108
82655fa54acb [gaim-migrate @ 7673]
Christian Hammond <chipx86@chipx86.com>
parents: 7107
diff changeset
680 * of the delimiting substring.
8461
920171a59e45 [gaim-migrate @ 9191]
Mark Doliner <markdoliner@pidgin.im>
parents: 8442
diff changeset
681 *
7108
82655fa54acb [gaim-migrate @ 7673]
Christian Hammond <chipx86@chipx86.com>
parents: 7107
diff changeset
682 * Given a string, this replaces one substring with another
82655fa54acb [gaim-migrate @ 7673]
Christian Hammond <chipx86@chipx86.com>
parents: 7107
diff changeset
683 * and returns a newly allocated string.
82655fa54acb [gaim-migrate @ 7673]
Christian Hammond <chipx86@chipx86.com>
parents: 7107
diff changeset
684 *
35393
00f876b129bc Initial replacements for gtk-doc style comments
Ankit Vani <a@nevitus.org>
parents: 35265
diff changeset
685 * Returns: A new string, after performing the substitution.
8461
920171a59e45 [gaim-migrate @ 9191]
Mark Doliner <markdoliner@pidgin.im>
parents: 8442
diff changeset
686 * free this with g_free().
7108
82655fa54acb [gaim-migrate @ 7673]
Christian Hammond <chipx86@chipx86.com>
parents: 7107
diff changeset
687 */
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15707
diff changeset
688 gchar *purple_strreplace(const char *string, const char *delimiter,
8341
dc43b1acfc1a [gaim-migrate @ 9065]
Mark Doliner <markdoliner@pidgin.im>
parents: 8163
diff changeset
689 const char *replacement);
dc43b1acfc1a [gaim-migrate @ 9065]
Mark Doliner <markdoliner@pidgin.im>
parents: 8163
diff changeset
690
12813
6f67cfa0e6a0 [gaim-migrate @ 15161]
Christopher O'Brien <siege@pidgin.im>
parents: 12483
diff changeset
691
6f67cfa0e6a0 [gaim-migrate @ 15161]
Christopher O'Brien <siege@pidgin.im>
parents: 12483
diff changeset
692 /**
35400
a22531410e3f Convert docs from doxygen to gtk-doc format for request.h and util.h
Ankit Vani <a@nevitus.org>
parents: 35394
diff changeset
693 * purple_utf8_ncr_encode:
a22531410e3f Convert docs from doxygen to gtk-doc format for request.h and util.h
Ankit Vani <a@nevitus.org>
parents: 35394
diff changeset
694 * @in: The string which might contain utf-8 substrings
a22531410e3f Convert docs from doxygen to gtk-doc format for request.h and util.h
Ankit Vani <a@nevitus.org>
parents: 35394
diff changeset
695 *
12813
6f67cfa0e6a0 [gaim-migrate @ 15161]
Christopher O'Brien <siege@pidgin.im>
parents: 12483
diff changeset
696 * Given a string, this replaces any utf-8 substrings in that string with
6f67cfa0e6a0 [gaim-migrate @ 15161]
Christopher O'Brien <siege@pidgin.im>
parents: 12483
diff changeset
697 * the corresponding numerical character reference, and returns a newly
6f67cfa0e6a0 [gaim-migrate @ 15161]
Christopher O'Brien <siege@pidgin.im>
parents: 12483
diff changeset
698 * allocated string.
6f67cfa0e6a0 [gaim-migrate @ 15161]
Christopher O'Brien <siege@pidgin.im>
parents: 12483
diff changeset
699 *
35393
00f876b129bc Initial replacements for gtk-doc style comments
Ankit Vani <a@nevitus.org>
parents: 35265
diff changeset
700 * Returns: A new string, with utf-8 replaced with numerical character
12813
6f67cfa0e6a0 [gaim-migrate @ 15161]
Christopher O'Brien <siege@pidgin.im>
parents: 12483
diff changeset
701 * references, free this with g_free()
6f67cfa0e6a0 [gaim-migrate @ 15161]
Christopher O'Brien <siege@pidgin.im>
parents: 12483
diff changeset
702 */
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15707
diff changeset
703 char *purple_utf8_ncr_encode(const char *in);
12813
6f67cfa0e6a0 [gaim-migrate @ 15161]
Christopher O'Brien <siege@pidgin.im>
parents: 12483
diff changeset
704
6f67cfa0e6a0 [gaim-migrate @ 15161]
Christopher O'Brien <siege@pidgin.im>
parents: 12483
diff changeset
705
8341
dc43b1acfc1a [gaim-migrate @ 9065]
Mark Doliner <markdoliner@pidgin.im>
parents: 8163
diff changeset
706 /**
35400
a22531410e3f Convert docs from doxygen to gtk-doc format for request.h and util.h
Ankit Vani <a@nevitus.org>
parents: 35394
diff changeset
707 * purple_utf8_ncr_decode:
a22531410e3f Convert docs from doxygen to gtk-doc format for request.h and util.h
Ankit Vani <a@nevitus.org>
parents: 35394
diff changeset
708 * @in: The string which might contain numerical character references.
a22531410e3f Convert docs from doxygen to gtk-doc format for request.h and util.h
Ankit Vani <a@nevitus.org>
parents: 35394
diff changeset
709 *
9171
2b50af5d8ea6 [gaim-migrate @ 9956]
Tim Ringenbach <marv@pidgin.im>
parents: 9045
diff changeset
710 * Given a string, this replaces any numerical character references
2b50af5d8ea6 [gaim-migrate @ 9956]
Tim Ringenbach <marv@pidgin.im>
parents: 9045
diff changeset
711 * in that string with the corresponding actual utf-8 substrings,
2b50af5d8ea6 [gaim-migrate @ 9956]
Tim Ringenbach <marv@pidgin.im>
parents: 9045
diff changeset
712 * and returns a newly allocated string.
2b50af5d8ea6 [gaim-migrate @ 9956]
Tim Ringenbach <marv@pidgin.im>
parents: 9045
diff changeset
713 *
35393
00f876b129bc Initial replacements for gtk-doc style comments
Ankit Vani <a@nevitus.org>
parents: 35265
diff changeset
714 * Returns: A new string, with numerical character references
9171
2b50af5d8ea6 [gaim-migrate @ 9956]
Tim Ringenbach <marv@pidgin.im>
parents: 9045
diff changeset
715 * replaced with actual utf-8, free this with g_free().
2b50af5d8ea6 [gaim-migrate @ 9956]
Tim Ringenbach <marv@pidgin.im>
parents: 9045
diff changeset
716 */
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15707
diff changeset
717 char *purple_utf8_ncr_decode(const char *in);
9171
2b50af5d8ea6 [gaim-migrate @ 9956]
Tim Ringenbach <marv@pidgin.im>
parents: 9045
diff changeset
718
12813
6f67cfa0e6a0 [gaim-migrate @ 15161]
Christopher O'Brien <siege@pidgin.im>
parents: 12483
diff changeset
719
9171
2b50af5d8ea6 [gaim-migrate @ 9956]
Tim Ringenbach <marv@pidgin.im>
parents: 9045
diff changeset
720 /**
35400
a22531410e3f Convert docs from doxygen to gtk-doc format for request.h and util.h
Ankit Vani <a@nevitus.org>
parents: 35394
diff changeset
721 * purple_strcasereplace:
35393
00f876b129bc Initial replacements for gtk-doc style comments
Ankit Vani <a@nevitus.org>
parents: 35265
diff changeset
722 * @string: The string from which to replace stuff.
00f876b129bc Initial replacements for gtk-doc style comments
Ankit Vani <a@nevitus.org>
parents: 35265
diff changeset
723 * @delimiter: The substring you want replaced.
00f876b129bc Initial replacements for gtk-doc style comments
Ankit Vani <a@nevitus.org>
parents: 35265
diff changeset
724 * @replacement: The substring you want inserted in place
8341
dc43b1acfc1a [gaim-migrate @ 9065]
Mark Doliner <markdoliner@pidgin.im>
parents: 8163
diff changeset
725 * of the delimiting substring.
8461
920171a59e45 [gaim-migrate @ 9191]
Mark Doliner <markdoliner@pidgin.im>
parents: 8442
diff changeset
726 *
8341
dc43b1acfc1a [gaim-migrate @ 9065]
Mark Doliner <markdoliner@pidgin.im>
parents: 8163
diff changeset
727 * Given a string, this replaces one substring with another
dc43b1acfc1a [gaim-migrate @ 9065]
Mark Doliner <markdoliner@pidgin.im>
parents: 8163
diff changeset
728 * ignoring case and returns a newly allocated string.
dc43b1acfc1a [gaim-migrate @ 9065]
Mark Doliner <markdoliner@pidgin.im>
parents: 8163
diff changeset
729 *
35393
00f876b129bc Initial replacements for gtk-doc style comments
Ankit Vani <a@nevitus.org>
parents: 35265
diff changeset
730 * Returns: A new string, after performing the substitution.
8461
920171a59e45 [gaim-migrate @ 9191]
Mark Doliner <markdoliner@pidgin.im>
parents: 8442
diff changeset
731 * free this with g_free().
8341
dc43b1acfc1a [gaim-migrate @ 9065]
Mark Doliner <markdoliner@pidgin.im>
parents: 8163
diff changeset
732 */
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15707
diff changeset
733 gchar *purple_strcasereplace(const char *string, const char *delimiter,
8341
dc43b1acfc1a [gaim-migrate @ 9065]
Mark Doliner <markdoliner@pidgin.im>
parents: 8163
diff changeset
734 const char *replacement);
7108
82655fa54acb [gaim-migrate @ 7673]
Christian Hammond <chipx86@chipx86.com>
parents: 7107
diff changeset
735
82655fa54acb [gaim-migrate @ 7673]
Christian Hammond <chipx86@chipx86.com>
parents: 7107
diff changeset
736 /**
35400
a22531410e3f Convert docs from doxygen to gtk-doc format for request.h and util.h
Ankit Vani <a@nevitus.org>
parents: 35394
diff changeset
737 * purple_strcasestr:
a22531410e3f Convert docs from doxygen to gtk-doc format for request.h and util.h
Ankit Vani <a@nevitus.org>
parents: 35394
diff changeset
738 * @haystack: The string to search in.
a22531410e3f Convert docs from doxygen to gtk-doc format for request.h and util.h
Ankit Vani <a@nevitus.org>
parents: 35394
diff changeset
739 * @needle: The substring to find.
a22531410e3f Convert docs from doxygen to gtk-doc format for request.h and util.h
Ankit Vani <a@nevitus.org>
parents: 35394
diff changeset
740 *
7108
82655fa54acb [gaim-migrate @ 7673]
Christian Hammond <chipx86@chipx86.com>
parents: 7107
diff changeset
741 * This is like strstr, except that it ignores ASCII case in
82655fa54acb [gaim-migrate @ 7673]
Christian Hammond <chipx86@chipx86.com>
parents: 7107
diff changeset
742 * searching for the substring.
82655fa54acb [gaim-migrate @ 7673]
Christian Hammond <chipx86@chipx86.com>
parents: 7107
diff changeset
743 *
35393
00f876b129bc Initial replacements for gtk-doc style comments
Ankit Vani <a@nevitus.org>
parents: 35265
diff changeset
744 * Returns: the location of the substring if found, or NULL if not
7108
82655fa54acb [gaim-migrate @ 7673]
Christian Hammond <chipx86@chipx86.com>
parents: 7107
diff changeset
745 */
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15707
diff changeset
746 const char *purple_strcasestr(const char *haystack, const char *needle);
7108
82655fa54acb [gaim-migrate @ 7673]
Christian Hammond <chipx86@chipx86.com>
parents: 7107
diff changeset
747
82655fa54acb [gaim-migrate @ 7673]
Christian Hammond <chipx86@chipx86.com>
parents: 7107
diff changeset
748 /**
35400
a22531410e3f Convert docs from doxygen to gtk-doc format for request.h and util.h
Ankit Vani <a@nevitus.org>
parents: 35394
diff changeset
749 * purple_str_seconds_to_string:
a22531410e3f Convert docs from doxygen to gtk-doc format for request.h and util.h
Ankit Vani <a@nevitus.org>
parents: 35394
diff changeset
750 * @sec: The seconds.
7108
82655fa54acb [gaim-migrate @ 7673]
Christian Hammond <chipx86@chipx86.com>
parents: 7107
diff changeset
751 *
82655fa54acb [gaim-migrate @ 7673]
Christian Hammond <chipx86@chipx86.com>
parents: 7107
diff changeset
752 * Converts seconds into a human-readable form.
82655fa54acb [gaim-migrate @ 7673]
Christian Hammond <chipx86@chipx86.com>
parents: 7107
diff changeset
753 *
35393
00f876b129bc Initial replacements for gtk-doc style comments
Ankit Vani <a@nevitus.org>
parents: 35265
diff changeset
754 * Returns: A human-readable form, containing days, hours, minutes, and
7108
82655fa54acb [gaim-migrate @ 7673]
Christian Hammond <chipx86@chipx86.com>
parents: 7107
diff changeset
755 * seconds.
82655fa54acb [gaim-migrate @ 7673]
Christian Hammond <chipx86@chipx86.com>
parents: 7107
diff changeset
756 */
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15707
diff changeset
757 char *purple_str_seconds_to_string(guint sec);
7108
82655fa54acb [gaim-migrate @ 7673]
Christian Hammond <chipx86@chipx86.com>
parents: 7107
diff changeset
758
9277
08d5a10f91c6 [gaim-migrate @ 10080]
Tim Ringenbach <marv@pidgin.im>
parents: 9227
diff changeset
759 /**
35400
a22531410e3f Convert docs from doxygen to gtk-doc format for request.h and util.h
Ankit Vani <a@nevitus.org>
parents: 35394
diff changeset
760 * purple_utf16_size:
a22531410e3f Convert docs from doxygen to gtk-doc format for request.h and util.h
Ankit Vani <a@nevitus.org>
parents: 35394
diff changeset
761 * @str: String to check.
a22531410e3f Convert docs from doxygen to gtk-doc format for request.h and util.h
Ankit Vani <a@nevitus.org>
parents: 35394
diff changeset
762 *
34171
a23f3228c465 New keyring: store passwords using Windows credentials
Tomasz Wasilczyk <tomkiewicz@cpw.pidgin.im>
parents: 34145
diff changeset
763 * Calculates UTF-16 string size (in bytes).
a23f3228c465 New keyring: store passwords using Windows credentials
Tomasz Wasilczyk <tomkiewicz@cpw.pidgin.im>
parents: 34145
diff changeset
764 *
35393
00f876b129bc Initial replacements for gtk-doc style comments
Ankit Vani <a@nevitus.org>
parents: 35265
diff changeset
765 * Returns: Number of bytes (including NUL character) that string occupies.
34171
a23f3228c465 New keyring: store passwords using Windows credentials
Tomasz Wasilczyk <tomkiewicz@cpw.pidgin.im>
parents: 34145
diff changeset
766 */
a23f3228c465 New keyring: store passwords using Windows credentials
Tomasz Wasilczyk <tomkiewicz@cpw.pidgin.im>
parents: 34145
diff changeset
767 size_t purple_utf16_size(const gunichar2 *str);
a23f3228c465 New keyring: store passwords using Windows credentials
Tomasz Wasilczyk <tomkiewicz@cpw.pidgin.im>
parents: 34145
diff changeset
768
a23f3228c465 New keyring: store passwords using Windows credentials
Tomasz Wasilczyk <tomkiewicz@cpw.pidgin.im>
parents: 34145
diff changeset
769 /**
35400
a22531410e3f Convert docs from doxygen to gtk-doc format for request.h and util.h
Ankit Vani <a@nevitus.org>
parents: 35394
diff changeset
770 * purple_str_wipe:
a22531410e3f Convert docs from doxygen to gtk-doc format for request.h and util.h
Ankit Vani <a@nevitus.org>
parents: 35394
diff changeset
771 * @str: A NUL-terminated string to free, or a NULL-pointer.
a22531410e3f Convert docs from doxygen to gtk-doc format for request.h and util.h
Ankit Vani <a@nevitus.org>
parents: 35394
diff changeset
772 *
34145
fa72f1e5cd77 Some polishing on files modified on this branch (mostly formatting)
Tomasz Wasilczyk <tomkiewicz@cpw.pidgin.im>
parents: 33773
diff changeset
773 * Fills a NUL-terminated string with zeros and frees it.
fa72f1e5cd77 Some polishing on files modified on this branch (mostly formatting)
Tomasz Wasilczyk <tomkiewicz@cpw.pidgin.im>
parents: 33773
diff changeset
774 *
fa72f1e5cd77 Some polishing on files modified on this branch (mostly formatting)
Tomasz Wasilczyk <tomkiewicz@cpw.pidgin.im>
parents: 33773
diff changeset
775 * It should be used to free sensitive data, like passwords.
fa72f1e5cd77 Some polishing on files modified on this branch (mostly formatting)
Tomasz Wasilczyk <tomkiewicz@cpw.pidgin.im>
parents: 33773
diff changeset
776 */
fa72f1e5cd77 Some polishing on files modified on this branch (mostly formatting)
Tomasz Wasilczyk <tomkiewicz@cpw.pidgin.im>
parents: 33773
diff changeset
777 void purple_str_wipe(gchar *str);
34171
a23f3228c465 New keyring: store passwords using Windows credentials
Tomasz Wasilczyk <tomkiewicz@cpw.pidgin.im>
parents: 34145
diff changeset
778
a23f3228c465 New keyring: store passwords using Windows credentials
Tomasz Wasilczyk <tomkiewicz@cpw.pidgin.im>
parents: 34145
diff changeset
779 /**
35400
a22531410e3f Convert docs from doxygen to gtk-doc format for request.h and util.h
Ankit Vani <a@nevitus.org>
parents: 35394
diff changeset
780 * purple_utf16_wipe:
a22531410e3f Convert docs from doxygen to gtk-doc format for request.h and util.h
Ankit Vani <a@nevitus.org>
parents: 35394
diff changeset
781 * @str: A NUL-terminated string to free, or a NULL-pointer.
a22531410e3f Convert docs from doxygen to gtk-doc format for request.h and util.h
Ankit Vani <a@nevitus.org>
parents: 35394
diff changeset
782 *
34171
a23f3228c465 New keyring: store passwords using Windows credentials
Tomasz Wasilczyk <tomkiewicz@cpw.pidgin.im>
parents: 34145
diff changeset
783 * Fills a NUL-terminated UTF-16 string with zeros and frees it.
a23f3228c465 New keyring: store passwords using Windows credentials
Tomasz Wasilczyk <tomkiewicz@cpw.pidgin.im>
parents: 34145
diff changeset
784 *
a23f3228c465 New keyring: store passwords using Windows credentials
Tomasz Wasilczyk <tomkiewicz@cpw.pidgin.im>
parents: 34145
diff changeset
785 * It should be used to free sensitive data, like passwords.
a23f3228c465 New keyring: store passwords using Windows credentials
Tomasz Wasilczyk <tomkiewicz@cpw.pidgin.im>
parents: 34145
diff changeset
786 */
a23f3228c465 New keyring: store passwords using Windows credentials
Tomasz Wasilczyk <tomkiewicz@cpw.pidgin.im>
parents: 34145
diff changeset
787 void purple_utf16_wipe(gunichar2 *str);
7108
82655fa54acb [gaim-migrate @ 7673]
Christian Hammond <chipx86@chipx86.com>
parents: 7107
diff changeset
788
82655fa54acb [gaim-migrate @ 7673]
Christian Hammond <chipx86@chipx86.com>
parents: 7107
diff changeset
789 /**************************************************************************/
35472
474e26199560 Removed @name
Ankit Vani <a@nevitus.org>
parents: 35471
diff changeset
790 /* URI/URL Functions */
7108
82655fa54acb [gaim-migrate @ 7673]
Christian Hammond <chipx86@chipx86.com>
parents: 7107
diff changeset
791 /**************************************************************************/
82655fa54acb [gaim-migrate @ 7673]
Christian Hammond <chipx86@chipx86.com>
parents: 7107
diff changeset
792
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15707
diff changeset
793 void purple_got_protocol_handler_uri(const char *uri);
15678
7434ef155a3a Core support for external protocol URIs. The actual handling of the URIs will be in the prpls and other plugins. This commit only includes the win32 method of actually passing in a URI - the dbus implementation still needs to be written.
Daniel Atallah <datallah@pidgin.im>
parents: 15482
diff changeset
794
7107
903864ff76c3 [gaim-migrate @ 7672]
Christian Hammond <chipx86@chipx86.com>
parents: 7106
diff changeset
795 /**
35400
a22531410e3f Convert docs from doxygen to gtk-doc format for request.h and util.h
Ankit Vani <a@nevitus.org>
parents: 35394
diff changeset
796 * purple_url_decode:
a22531410e3f Convert docs from doxygen to gtk-doc format for request.h and util.h
Ankit Vani <a@nevitus.org>
parents: 35394
diff changeset
797 * @str: The string to translate.
24011
0cff24bf7dba Add temporary purple_util_fetch_url_request_len and purple_util_fetch_url_len
Daniel Atallah <datallah@pidgin.im>
parents: 23850
diff changeset
798 *
7134
e999c4697e38 [gaim-migrate @ 7701]
Sean Egan <seanegan@pidgin.im>
parents: 7123
diff changeset
799 * Decodes a URL into a plain string.
e999c4697e38 [gaim-migrate @ 7701]
Sean Egan <seanegan@pidgin.im>
parents: 7123
diff changeset
800 *
e999c4697e38 [gaim-migrate @ 7701]
Sean Egan <seanegan@pidgin.im>
parents: 7123
diff changeset
801 * This will change hex codes and such to their ascii equivalents.
e999c4697e38 [gaim-migrate @ 7701]
Sean Egan <seanegan@pidgin.im>
parents: 7123
diff changeset
802 *
35393
00f876b129bc Initial replacements for gtk-doc style comments
Ankit Vani <a@nevitus.org>
parents: 35265
diff changeset
803 * Returns: The resulting string.
7162
dfd30c70acde [gaim-migrate @ 7729]
Nathan Walp <nwalp@pidgin.im>
parents: 7134
diff changeset
804 */
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15707
diff changeset
805 const char *purple_url_decode(const char *str);
7134
e999c4697e38 [gaim-migrate @ 7701]
Sean Egan <seanegan@pidgin.im>
parents: 7123
diff changeset
806
e999c4697e38 [gaim-migrate @ 7701]
Sean Egan <seanegan@pidgin.im>
parents: 7123
diff changeset
807 /**
35400
a22531410e3f Convert docs from doxygen to gtk-doc format for request.h and util.h
Ankit Vani <a@nevitus.org>
parents: 35394
diff changeset
808 * purple_url_encode:
a22531410e3f Convert docs from doxygen to gtk-doc format for request.h and util.h
Ankit Vani <a@nevitus.org>
parents: 35394
diff changeset
809 * @str: The string to translate.
a22531410e3f Convert docs from doxygen to gtk-doc format for request.h and util.h
Ankit Vani <a@nevitus.org>
parents: 35394
diff changeset
810 *
7134
e999c4697e38 [gaim-migrate @ 7701]
Sean Egan <seanegan@pidgin.im>
parents: 7123
diff changeset
811 * Encodes a URL into an escaped string.
e999c4697e38 [gaim-migrate @ 7701]
Sean Egan <seanegan@pidgin.im>
parents: 7123
diff changeset
812 *
e999c4697e38 [gaim-migrate @ 7701]
Sean Egan <seanegan@pidgin.im>
parents: 7123
diff changeset
813 * This will change non-alphanumeric characters to hex codes.
e999c4697e38 [gaim-migrate @ 7701]
Sean Egan <seanegan@pidgin.im>
parents: 7123
diff changeset
814 *
35393
00f876b129bc Initial replacements for gtk-doc style comments
Ankit Vani <a@nevitus.org>
parents: 35265
diff changeset
815 * Returns: The resulting string.
7134
e999c4697e38 [gaim-migrate @ 7701]
Sean Egan <seanegan@pidgin.im>
parents: 7123
diff changeset
816 */
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15707
diff changeset
817 const char *purple_url_encode(const char *str);
6982
12f08de92674 [gaim-migrate @ 7538]
Mark Doliner <markdoliner@pidgin.im>
parents: 6861
diff changeset
818
9045
c665ceb89b85 [gaim-migrate @ 9821]
Stu Tomlinson <nosnilmot@pidgin.im>
parents: 9000
diff changeset
819 /**
35400
a22531410e3f Convert docs from doxygen to gtk-doc format for request.h and util.h
Ankit Vani <a@nevitus.org>
parents: 35394
diff changeset
820 * purple_email_is_valid:
a22531410e3f Convert docs from doxygen to gtk-doc format for request.h and util.h
Ankit Vani <a@nevitus.org>
parents: 35394
diff changeset
821 * @address: The email address to validate.
9045
c665ceb89b85 [gaim-migrate @ 9821]
Stu Tomlinson <nosnilmot@pidgin.im>
parents: 9000
diff changeset
822 *
c665ceb89b85 [gaim-migrate @ 9821]
Stu Tomlinson <nosnilmot@pidgin.im>
parents: 9000
diff changeset
823 * Checks if the given email address is syntactically valid.
c665ceb89b85 [gaim-migrate @ 9821]
Stu Tomlinson <nosnilmot@pidgin.im>
parents: 9000
diff changeset
824 *
35393
00f876b129bc Initial replacements for gtk-doc style comments
Ankit Vani <a@nevitus.org>
parents: 35265
diff changeset
825 * Returns: True if the email address is syntactically correct.
9045
c665ceb89b85 [gaim-migrate @ 9821]
Stu Tomlinson <nosnilmot@pidgin.im>
parents: 9000
diff changeset
826 */
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15707
diff changeset
827 gboolean purple_email_is_valid(const char *address);
9045
c665ceb89b85 [gaim-migrate @ 9821]
Stu Tomlinson <nosnilmot@pidgin.im>
parents: 9000
diff changeset
828
9670
4e8cb7ef72ab [gaim-migrate @ 10522]
Daniel Atallah <datallah@pidgin.im>
parents: 9642
diff changeset
829 /**
35400
a22531410e3f Convert docs from doxygen to gtk-doc format for request.h and util.h
Ankit Vani <a@nevitus.org>
parents: 35394
diff changeset
830 * purple_uri_list_extract_uris:
a22531410e3f Convert docs from doxygen to gtk-doc format for request.h and util.h
Ankit Vani <a@nevitus.org>
parents: 35394
diff changeset
831 * @uri_list: An uri-list in the standard format.
a22531410e3f Convert docs from doxygen to gtk-doc format for request.h and util.h
Ankit Vani <a@nevitus.org>
parents: 35394
diff changeset
832 *
11135
063678d038f9 [gaim-migrate @ 13196]
Mark Doliner <markdoliner@pidgin.im>
parents: 11132
diff changeset
833 * This function extracts a list of URIs from the a "text/uri-list"
063678d038f9 [gaim-migrate @ 13196]
Mark Doliner <markdoliner@pidgin.im>
parents: 11132
diff changeset
834 * string. It was "borrowed" from gnome_uri_list_extract_uris
063678d038f9 [gaim-migrate @ 13196]
Mark Doliner <markdoliner@pidgin.im>
parents: 11132
diff changeset
835 *
39738
14d425a528ad Add missing transfer annotations.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents: 39659
diff changeset
836 * Returns: (element-type utf8) (transfer full): A list of strings that have
14d425a528ad Add missing transfer annotations.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents: 39659
diff changeset
837 * been split from uri-list.
9670
4e8cb7ef72ab [gaim-migrate @ 10522]
Daniel Atallah <datallah@pidgin.im>
parents: 9642
diff changeset
838 */
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15707
diff changeset
839 GList *purple_uri_list_extract_uris(const gchar *uri_list);
9670
4e8cb7ef72ab [gaim-migrate @ 10522]
Daniel Atallah <datallah@pidgin.im>
parents: 9642
diff changeset
840
4e8cb7ef72ab [gaim-migrate @ 10522]
Daniel Atallah <datallah@pidgin.im>
parents: 9642
diff changeset
841 /**
35400
a22531410e3f Convert docs from doxygen to gtk-doc format for request.h and util.h
Ankit Vani <a@nevitus.org>
parents: 35394
diff changeset
842 * purple_uri_list_extract_filenames:
a22531410e3f Convert docs from doxygen to gtk-doc format for request.h and util.h
Ankit Vani <a@nevitus.org>
parents: 35394
diff changeset
843 * @uri_list: A uri-list in the standard format.
a22531410e3f Convert docs from doxygen to gtk-doc format for request.h and util.h
Ankit Vani <a@nevitus.org>
parents: 35394
diff changeset
844 *
11135
063678d038f9 [gaim-migrate @ 13196]
Mark Doliner <markdoliner@pidgin.im>
parents: 11132
diff changeset
845 * This function extracts a list of filenames from a
063678d038f9 [gaim-migrate @ 13196]
Mark Doliner <markdoliner@pidgin.im>
parents: 11132
diff changeset
846 * "text/uri-list" string. It was "borrowed" from
063678d038f9 [gaim-migrate @ 13196]
Mark Doliner <markdoliner@pidgin.im>
parents: 11132
diff changeset
847 * gnome_uri_list_extract_filenames
063678d038f9 [gaim-migrate @ 13196]
Mark Doliner <markdoliner@pidgin.im>
parents: 11132
diff changeset
848 *
39738
14d425a528ad Add missing transfer annotations.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents: 39659
diff changeset
849 * Returns: (element-type utf8) (transfer full): A list of strings that contain
14d425a528ad Add missing transfer annotations.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents: 39659
diff changeset
850 * the filenames in the uri-list. Note that unlike the
14d425a528ad Add missing transfer annotations.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents: 39659
diff changeset
851 * purple_uri_list_extract_uris() function, this will discard any
14d425a528ad Add missing transfer annotations.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents: 39659
diff changeset
852 * non-file uri from the result value.
9670
4e8cb7ef72ab [gaim-migrate @ 10522]
Daniel Atallah <datallah@pidgin.im>
parents: 9642
diff changeset
853 */
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15707
diff changeset
854 GList *purple_uri_list_extract_filenames(const gchar *uri_list);
9670
4e8cb7ef72ab [gaim-migrate @ 10522]
Daniel Atallah <datallah@pidgin.im>
parents: 9642
diff changeset
855
38737
d85c241e3183 Add unit tests for xdg-open URI escaping
Daniel Kamil Kozar <dkk089@gmail.com>
parents: 38089
diff changeset
856 /**
39027
2dcbddd76a80 util: Update documentation block for purple_uri_escape_for_open()
Mike Ruprecht <cmaiku@gmail.com>
parents: 39018
diff changeset
857 * purple_uri_escape_for_open:
2dcbddd76a80 util: Update documentation block for purple_uri_escape_for_open()
Mike Ruprecht <cmaiku@gmail.com>
parents: 39018
diff changeset
858 * @unescaped: The unescaped URI.
2dcbddd76a80 util: Update documentation block for purple_uri_escape_for_open()
Mike Ruprecht <cmaiku@gmail.com>
parents: 39018
diff changeset
859 *
38737
d85c241e3183 Add unit tests for xdg-open URI escaping
Daniel Kamil Kozar <dkk089@gmail.com>
parents: 38089
diff changeset
860 * This function escapes any characters that might be interpreted by the shell
d85c241e3183 Add unit tests for xdg-open URI escaping
Daniel Kamil Kozar <dkk089@gmail.com>
parents: 38089
diff changeset
861 * when executing a program to open a URI on some systems.
d85c241e3183 Add unit tests for xdg-open URI escaping
Daniel Kamil Kozar <dkk089@gmail.com>
parents: 38089
diff changeset
862 *
39027
2dcbddd76a80 util: Update documentation block for purple_uri_escape_for_open()
Mike Ruprecht <cmaiku@gmail.com>
parents: 39018
diff changeset
863 * Returns: A newly allocated string with any shell metacharacters replaced
2dcbddd76a80 util: Update documentation block for purple_uri_escape_for_open()
Mike Ruprecht <cmaiku@gmail.com>
parents: 39018
diff changeset
864 * with their escaped equivalents.
40228
742cbafea3b8 Add Since tags for 2.13.0 new symbols.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents: 40171
diff changeset
865 *
742cbafea3b8 Add Since tags for 2.13.0 new symbols.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents: 40171
diff changeset
866 * Since: 2.13.0
38737
d85c241e3183 Add unit tests for xdg-open URI escaping
Daniel Kamil Kozar <dkk089@gmail.com>
parents: 38089
diff changeset
867 */
d85c241e3183 Add unit tests for xdg-open URI escaping
Daniel Kamil Kozar <dkk089@gmail.com>
parents: 38089
diff changeset
868 char *purple_uri_escape_for_open(const char *unescaped);
d85c241e3183 Add unit tests for xdg-open URI escaping
Daniel Kamil Kozar <dkk089@gmail.com>
parents: 38089
diff changeset
869
7108
82655fa54acb [gaim-migrate @ 7673]
Christian Hammond <chipx86@chipx86.com>
parents: 7107
diff changeset
870 /**************************************************************************
82655fa54acb [gaim-migrate @ 7673]
Christian Hammond <chipx86@chipx86.com>
parents: 7107
diff changeset
871 * UTF8 String Functions
82655fa54acb [gaim-migrate @ 7673]
Christian Hammond <chipx86@chipx86.com>
parents: 7107
diff changeset
872 **************************************************************************/
82655fa54acb [gaim-migrate @ 7673]
Christian Hammond <chipx86@chipx86.com>
parents: 7107
diff changeset
873
82655fa54acb [gaim-migrate @ 7673]
Christian Hammond <chipx86@chipx86.com>
parents: 7107
diff changeset
874 /**
35400
a22531410e3f Convert docs from doxygen to gtk-doc format for request.h and util.h
Ankit Vani <a@nevitus.org>
parents: 35394
diff changeset
875 * purple_utf8_try_convert:
a22531410e3f Convert docs from doxygen to gtk-doc format for request.h and util.h
Ankit Vani <a@nevitus.org>
parents: 35394
diff changeset
876 * @str: The source string.
a22531410e3f Convert docs from doxygen to gtk-doc format for request.h and util.h
Ankit Vani <a@nevitus.org>
parents: 35394
diff changeset
877 *
7108
82655fa54acb [gaim-migrate @ 7673]
Christian Hammond <chipx86@chipx86.com>
parents: 7107
diff changeset
878 * Attempts to convert a string to UTF-8 from an unknown encoding.
82655fa54acb [gaim-migrate @ 7673]
Christian Hammond <chipx86@chipx86.com>
parents: 7107
diff changeset
879 *
82655fa54acb [gaim-migrate @ 7673]
Christian Hammond <chipx86@chipx86.com>
parents: 7107
diff changeset
880 * This function checks the locale and tries sane defaults.
82655fa54acb [gaim-migrate @ 7673]
Christian Hammond <chipx86@chipx86.com>
parents: 7107
diff changeset
881 *
35393
00f876b129bc Initial replacements for gtk-doc style comments
Ankit Vani <a@nevitus.org>
parents: 35265
diff changeset
882 * Returns: The UTF-8 string, or %NULL if it could not be converted.
7108
82655fa54acb [gaim-migrate @ 7673]
Christian Hammond <chipx86@chipx86.com>
parents: 7107
diff changeset
883 */
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15707
diff changeset
884 gchar *purple_utf8_try_convert(const char *str);
7108
82655fa54acb [gaim-migrate @ 7673]
Christian Hammond <chipx86@chipx86.com>
parents: 7107
diff changeset
885
82655fa54acb [gaim-migrate @ 7673]
Christian Hammond <chipx86@chipx86.com>
parents: 7107
diff changeset
886 /**
35400
a22531410e3f Convert docs from doxygen to gtk-doc format for request.h and util.h
Ankit Vani <a@nevitus.org>
parents: 35394
diff changeset
887 * purple_utf8_strip_unprintables:
a22531410e3f Convert docs from doxygen to gtk-doc format for request.h and util.h
Ankit Vani <a@nevitus.org>
parents: 35394
diff changeset
888 * @str: A valid UTF-8 string.
a22531410e3f Convert docs from doxygen to gtk-doc format for request.h and util.h
Ankit Vani <a@nevitus.org>
parents: 35394
diff changeset
889 *
27237
0643ac0e5658 Add purple_utf8_strip_unprintables and use it on outgoing XMPP messages.
Paul Aurich <darkrain42@pidgin.im>
parents: 27234
diff changeset
890 * Removes unprintable characters from a UTF-8 string. These characters
0643ac0e5658 Add purple_utf8_strip_unprintables and use it on outgoing XMPP messages.
Paul Aurich <darkrain42@pidgin.im>
parents: 27234
diff changeset
891 * (in particular low-ASCII characters) are invalid in XML 1.0 and thus
28384
e167fb02072e Hmm, g_unichar_isgraph is too restrictive in the characters allowed (it munges \t). Change purple_utf8_strip_unprintables to simply remove ASCII control characters instead.
Paul Aurich <darkrain42@pidgin.im>
parents: 27727
diff changeset
892 * are not allowed in XMPP and are rejected by libxml2 by default.
e167fb02072e Hmm, g_unichar_isgraph is too restrictive in the characters allowed (it munges \t). Change purple_utf8_strip_unprintables to simply remove ASCII control characters instead.
Paul Aurich <darkrain42@pidgin.im>
parents: 27727
diff changeset
893 *
e167fb02072e Hmm, g_unichar_isgraph is too restrictive in the characters allowed (it munges \t). Change purple_utf8_strip_unprintables to simply remove ASCII control characters instead.
Paul Aurich <darkrain42@pidgin.im>
parents: 27727
diff changeset
894 * The returned string must be freed by the caller.
27237
0643ac0e5658 Add purple_utf8_strip_unprintables and use it on outgoing XMPP messages.
Paul Aurich <darkrain42@pidgin.im>
parents: 27234
diff changeset
895 *
35393
00f876b129bc Initial replacements for gtk-doc style comments
Ankit Vani <a@nevitus.org>
parents: 35265
diff changeset
896 * Returns: A newly allocated UTF-8 string without the unprintable characters.
27237
0643ac0e5658 Add purple_utf8_strip_unprintables and use it on outgoing XMPP messages.
Paul Aurich <darkrain42@pidgin.im>
parents: 27234
diff changeset
897 */
0643ac0e5658 Add purple_utf8_strip_unprintables and use it on outgoing XMPP messages.
Paul Aurich <darkrain42@pidgin.im>
parents: 27234
diff changeset
898 gchar *purple_utf8_strip_unprintables(const gchar *str);
0643ac0e5658 Add purple_utf8_strip_unprintables and use it on outgoing XMPP messages.
Paul Aurich <darkrain42@pidgin.im>
parents: 27234
diff changeset
899
0643ac0e5658 Add purple_utf8_strip_unprintables and use it on outgoing XMPP messages.
Paul Aurich <darkrain42@pidgin.im>
parents: 27234
diff changeset
900 /**
35400
a22531410e3f Convert docs from doxygen to gtk-doc format for request.h and util.h
Ankit Vani <a@nevitus.org>
parents: 35394
diff changeset
901 * purple_gai_strerror:
a22531410e3f Convert docs from doxygen to gtk-doc format for request.h and util.h
Ankit Vani <a@nevitus.org>
parents: 35394
diff changeset
902 * @errnum: The error code.
a22531410e3f Convert docs from doxygen to gtk-doc format for request.h and util.h
Ankit Vani <a@nevitus.org>
parents: 35394
diff changeset
903 *
35467
975ae62dd895 Fix cross-references and some other warnings
Ankit Vani <a@nevitus.org>
parents: 35466
diff changeset
904 * Return the UTF-8 version of #gai_strerror. It calls #gai_strerror
975ae62dd895 Fix cross-references and some other warnings
Ankit Vani <a@nevitus.org>
parents: 35466
diff changeset
905 * then converts the result to UTF-8. This function is analogous to
21977
c87889698afb Create a purple_gai_strerror() function similar to g_str_error() which
Mark Doliner <markdoliner@pidgin.im>
parents: 21238
diff changeset
906 * g_strerror().
c87889698afb Create a purple_gai_strerror() function similar to g_str_error() which
Mark Doliner <markdoliner@pidgin.im>
parents: 21238
diff changeset
907 *
35393
00f876b129bc Initial replacements for gtk-doc style comments
Ankit Vani <a@nevitus.org>
parents: 35265
diff changeset
908 * Returns: The UTF-8 error message.
21977
c87889698afb Create a purple_gai_strerror() function similar to g_str_error() which
Mark Doliner <markdoliner@pidgin.im>
parents: 21238
diff changeset
909 */
32737
44c6902e2348 G_CONST_RETURN has been deprecated, use const instead
Gary Kramlich <grim@reaperworld.com>
parents: 32663
diff changeset
910 const gchar *purple_gai_strerror(gint errnum);
21977
c87889698afb Create a purple_gai_strerror() function similar to g_str_error() which
Mark Doliner <markdoliner@pidgin.im>
parents: 21238
diff changeset
911
c87889698afb Create a purple_gai_strerror() function similar to g_str_error() which
Mark Doliner <markdoliner@pidgin.im>
parents: 21238
diff changeset
912 /**
35400
a22531410e3f Convert docs from doxygen to gtk-doc format for request.h and util.h
Ankit Vani <a@nevitus.org>
parents: 35394
diff changeset
913 * purple_utf8_strcasecmp:
a22531410e3f Convert docs from doxygen to gtk-doc format for request.h and util.h
Ankit Vani <a@nevitus.org>
parents: 35394
diff changeset
914 * @a: The first string.
a22531410e3f Convert docs from doxygen to gtk-doc format for request.h and util.h
Ankit Vani <a@nevitus.org>
parents: 35394
diff changeset
915 * @b: The second string.
a22531410e3f Convert docs from doxygen to gtk-doc format for request.h and util.h
Ankit Vani <a@nevitus.org>
parents: 35394
diff changeset
916 *
25591
b19ece4232c1 I'm pretty sure this is what we meant here.
Etan Reisner <deryni@pidgin.im>
parents: 24072
diff changeset
917 * Compares two UTF-8 strings case-insensitively. This comparison is
16213
63bfcae0d7c9 Slightly more descriptive
Mark Doliner <markdoliner@pidgin.im>
parents: 16144
diff changeset
918 * more expensive than a simple g_utf8_collate() comparison because
63bfcae0d7c9 Slightly more descriptive
Mark Doliner <markdoliner@pidgin.im>
parents: 16144
diff changeset
919 * it calls g_utf8_casefold() on each string, which allocates new
63bfcae0d7c9 Slightly more descriptive
Mark Doliner <markdoliner@pidgin.im>
parents: 16144
diff changeset
920 * strings.
7108
82655fa54acb [gaim-migrate @ 7673]
Christian Hammond <chipx86@chipx86.com>
parents: 7107
diff changeset
921 *
35400
a22531410e3f Convert docs from doxygen to gtk-doc format for request.h and util.h
Ankit Vani <a@nevitus.org>
parents: 35394
diff changeset
922 * Returns: -1 if @a is less than @b.
a22531410e3f Convert docs from doxygen to gtk-doc format for request.h and util.h
Ankit Vani <a@nevitus.org>
parents: 35394
diff changeset
923 * 0 if @a is equal to @b.
a22531410e3f Convert docs from doxygen to gtk-doc format for request.h and util.h
Ankit Vani <a@nevitus.org>
parents: 35394
diff changeset
924 * 1 if @a is greater than @b.
7108
82655fa54acb [gaim-migrate @ 7673]
Christian Hammond <chipx86@chipx86.com>
parents: 7107
diff changeset
925 */
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15707
diff changeset
926 int purple_utf8_strcasecmp(const char *a, const char *b);
7108
82655fa54acb [gaim-migrate @ 7673]
Christian Hammond <chipx86@chipx86.com>
parents: 7107
diff changeset
927
7564
baab99d239d8 [gaim-migrate @ 8180]
Nathan Walp <nwalp@pidgin.im>
parents: 7478
diff changeset
928 /**
35400
a22531410e3f Convert docs from doxygen to gtk-doc format for request.h and util.h
Ankit Vani <a@nevitus.org>
parents: 35394
diff changeset
929 * purple_utf8_has_word:
a22531410e3f Convert docs from doxygen to gtk-doc format for request.h and util.h
Ankit Vani <a@nevitus.org>
parents: 35394
diff changeset
930 * @haystack: The string to search in.
a22531410e3f Convert docs from doxygen to gtk-doc format for request.h and util.h
Ankit Vani <a@nevitus.org>
parents: 35394
diff changeset
931 * @needle: The substring to find.
a22531410e3f Convert docs from doxygen to gtk-doc format for request.h and util.h
Ankit Vani <a@nevitus.org>
parents: 35394
diff changeset
932 *
11552
674a2a79943a [gaim-migrate @ 13812]
Casey Harkins <charkins@pidgin.im>
parents: 11501
diff changeset
933 * Case insensitive search for a word in a string. The needle string
674a2a79943a [gaim-migrate @ 13812]
Casey Harkins <charkins@pidgin.im>
parents: 11501
diff changeset
934 * must be contained in the haystack string and not be immediately
674a2a79943a [gaim-migrate @ 13812]
Casey Harkins <charkins@pidgin.im>
parents: 11501
diff changeset
935 * preceded or immediately followed by another alpha-numeric character.
674a2a79943a [gaim-migrate @ 13812]
Casey Harkins <charkins@pidgin.im>
parents: 11501
diff changeset
936 *
35393
00f876b129bc Initial replacements for gtk-doc style comments
Ankit Vani <a@nevitus.org>
parents: 35265
diff changeset
937 * Returns: TRUE if haystack has the word, otherwise FALSE
11552
674a2a79943a [gaim-migrate @ 13812]
Casey Harkins <charkins@pidgin.im>
parents: 11501
diff changeset
938 */
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15707
diff changeset
939 gboolean purple_utf8_has_word(const char *haystack, const char *needle);
11552
674a2a79943a [gaim-migrate @ 13812]
Casey Harkins <charkins@pidgin.im>
parents: 11501
diff changeset
940
674a2a79943a [gaim-migrate @ 13812]
Casey Harkins <charkins@pidgin.im>
parents: 11501
diff changeset
941 /**
35400
a22531410e3f Convert docs from doxygen to gtk-doc format for request.h and util.h
Ankit Vani <a@nevitus.org>
parents: 35394
diff changeset
942 * purple_message_meify:
35393
00f876b129bc Initial replacements for gtk-doc style comments
Ankit Vani <a@nevitus.org>
parents: 35265
diff changeset
943 * @message: The message to check
00f876b129bc Initial replacements for gtk-doc style comments
Ankit Vani <a@nevitus.org>
parents: 35265
diff changeset
944 * @len: The message length, or -1
7564
baab99d239d8 [gaim-migrate @ 8180]
Nathan Walp <nwalp@pidgin.im>
parents: 7478
diff changeset
945 *
18413
ae04f38e5b31 Remove static meify from yahoochat.c and replace use of it with
Will Thompson <resiak@pidgin.im>
parents: 18317
diff changeset
946 * Checks for messages starting (post-HTML) with "/me ", including the space.
7564
baab99d239d8 [gaim-migrate @ 8180]
Nathan Walp <nwalp@pidgin.im>
parents: 7478
diff changeset
947 *
35393
00f876b129bc Initial replacements for gtk-doc style comments
Ankit Vani <a@nevitus.org>
parents: 35265
diff changeset
948 * Returns: TRUE if it starts with "/me ", and it has been removed, otherwise
18413
ae04f38e5b31 Remove static meify from yahoochat.c and replace use of it with
Will Thompson <resiak@pidgin.im>
parents: 18317
diff changeset
949 * FALSE
7564
baab99d239d8 [gaim-migrate @ 8180]
Nathan Walp <nwalp@pidgin.im>
parents: 7478
diff changeset
950 */
19585
14b519abcc26 Fix some conversion warnings about using negative values with unsigned types. There are more, but these were easy fixes. You may think that I'm changing the API, but I'm really not - it was just wrong.
Daniel Atallah <datallah@pidgin.im>
parents: 18413
diff changeset
951 gboolean purple_message_meify(char *message, gssize len);
7564
baab99d239d8 [gaim-migrate @ 8180]
Nathan Walp <nwalp@pidgin.im>
parents: 7478
diff changeset
952
7889
34cc5467bf55 [gaim-migrate @ 8547]
Nathan Walp <nwalp@pidgin.im>
parents: 7821
diff changeset
953 /**
35400
a22531410e3f Convert docs from doxygen to gtk-doc format for request.h and util.h
Ankit Vani <a@nevitus.org>
parents: 35394
diff changeset
954 * purple_text_strip_mnemonic:
a22531410e3f Convert docs from doxygen to gtk-doc format for request.h and util.h
Ankit Vani <a@nevitus.org>
parents: 35394
diff changeset
955 * @in: The string to strip
a22531410e3f Convert docs from doxygen to gtk-doc format for request.h and util.h
Ankit Vani <a@nevitus.org>
parents: 35394
diff changeset
956 *
7889
34cc5467bf55 [gaim-migrate @ 8547]
Nathan Walp <nwalp@pidgin.im>
parents: 7821
diff changeset
957 * Removes the underscore characters from a string used identify the mnemonic
34cc5467bf55 [gaim-migrate @ 8547]
Nathan Walp <nwalp@pidgin.im>
parents: 7821
diff changeset
958 * character.
34cc5467bf55 [gaim-migrate @ 8547]
Nathan Walp <nwalp@pidgin.im>
parents: 7821
diff changeset
959 *
35393
00f876b129bc Initial replacements for gtk-doc style comments
Ankit Vani <a@nevitus.org>
parents: 35265
diff changeset
960 * Returns: The stripped string
7889
34cc5467bf55 [gaim-migrate @ 8547]
Nathan Walp <nwalp@pidgin.im>
parents: 7821
diff changeset
961 */
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15707
diff changeset
962 char *purple_text_strip_mnemonic(const char *in);
7889
34cc5467bf55 [gaim-migrate @ 8547]
Nathan Walp <nwalp@pidgin.im>
parents: 7821
diff changeset
963
8432
45a8b2b8c1ed [gaim-migrate @ 9162]
Kevin Stange <kstange@pidgin.im>
parents: 8341
diff changeset
964 /**
35400
a22531410e3f Convert docs from doxygen to gtk-doc format for request.h and util.h
Ankit Vani <a@nevitus.org>
parents: 35394
diff changeset
965 * purple_unescape_filename:
a22531410e3f Convert docs from doxygen to gtk-doc format for request.h and util.h
Ankit Vani <a@nevitus.org>
parents: 35394
diff changeset
966 * @str: The string to translate.
8432
45a8b2b8c1ed [gaim-migrate @ 9162]
Kevin Stange <kstange@pidgin.im>
parents: 8341
diff changeset
967 *
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15707
diff changeset
968 * Does the reverse of purple_escape_filename
9926
9957e01fd88a [gaim-migrate @ 10818]
Nathan Walp <nwalp@pidgin.im>
parents: 9670
diff changeset
969 *
9957e01fd88a [gaim-migrate @ 10818]
Nathan Walp <nwalp@pidgin.im>
parents: 9670
diff changeset
970 * This will change hex codes and such to their ascii equivalents.
9957e01fd88a [gaim-migrate @ 10818]
Nathan Walp <nwalp@pidgin.im>
parents: 9670
diff changeset
971 *
35393
00f876b129bc Initial replacements for gtk-doc style comments
Ankit Vani <a@nevitus.org>
parents: 35265
diff changeset
972 * Returns: The resulting string.
9926
9957e01fd88a [gaim-migrate @ 10818]
Nathan Walp <nwalp@pidgin.im>
parents: 9670
diff changeset
973 */
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15707
diff changeset
974 const char *purple_unescape_filename(const char *str);
9926
9957e01fd88a [gaim-migrate @ 10818]
Nathan Walp <nwalp@pidgin.im>
parents: 9670
diff changeset
975
9957e01fd88a [gaim-migrate @ 10818]
Nathan Walp <nwalp@pidgin.im>
parents: 9670
diff changeset
976 /**
35400
a22531410e3f Convert docs from doxygen to gtk-doc format for request.h and util.h
Ankit Vani <a@nevitus.org>
parents: 35394
diff changeset
977 * purple_escape_filename:
a22531410e3f Convert docs from doxygen to gtk-doc format for request.h and util.h
Ankit Vani <a@nevitus.org>
parents: 35394
diff changeset
978 * @str: The string to translate.
9926
9957e01fd88a [gaim-migrate @ 10818]
Nathan Walp <nwalp@pidgin.im>
parents: 9670
diff changeset
979 *
9957e01fd88a [gaim-migrate @ 10818]
Nathan Walp <nwalp@pidgin.im>
parents: 9670
diff changeset
980 * Escapes filesystem-unfriendly characters from a filename
9957e01fd88a [gaim-migrate @ 10818]
Nathan Walp <nwalp@pidgin.im>
parents: 9670
diff changeset
981 *
35393
00f876b129bc Initial replacements for gtk-doc style comments
Ankit Vani <a@nevitus.org>
parents: 35265
diff changeset
982 * Returns: The resulting string.
9926
9957e01fd88a [gaim-migrate @ 10818]
Nathan Walp <nwalp@pidgin.im>
parents: 9670
diff changeset
983 */
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15707
diff changeset
984 const char *purple_escape_filename(const char *str);
9926
9957e01fd88a [gaim-migrate @ 10818]
Nathan Walp <nwalp@pidgin.im>
parents: 9670
diff changeset
985
15482
b943b932a41b Make sure the pounces, buddy-aliases, savedstatuses etc. saved before the aim/icq split works after the split. The util function _gaim_oscar_convert will be removed at a 'suitable' time in the future.
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 15435
diff changeset
986 /**
35400
a22531410e3f Convert docs from doxygen to gtk-doc format for request.h and util.h
Ankit Vani <a@nevitus.org>
parents: 35394
diff changeset
987 * purple_value_new:
a22531410e3f Convert docs from doxygen to gtk-doc format for request.h and util.h
Ankit Vani <a@nevitus.org>
parents: 35394
diff changeset
988 * @type: The type of data to be held by the GValue
34808
442af3e72671 Added purple_g_value_new() and purple_g_value_free() to util
Ankit Vani <a@nevitus.org>
parents: 34614
diff changeset
989 *
35400
a22531410e3f Convert docs from doxygen to gtk-doc format for request.h and util.h
Ankit Vani <a@nevitus.org>
parents: 35394
diff changeset
990 * Creates a new GValue of the specified type.
34808
442af3e72671 Added purple_g_value_new() and purple_g_value_free() to util
Ankit Vani <a@nevitus.org>
parents: 34614
diff changeset
991 *
35393
00f876b129bc Initial replacements for gtk-doc style comments
Ankit Vani <a@nevitus.org>
parents: 35265
diff changeset
992 * Returns: The created GValue
34808
442af3e72671 Added purple_g_value_new() and purple_g_value_free() to util
Ankit Vani <a@nevitus.org>
parents: 34614
diff changeset
993 */
35005
bff56dfca65d Renamed purple_g_value_* to purple_value_*
Ankit Vani <a@nevitus.org>
parents: 34935
diff changeset
994 GValue *purple_value_new(GType type);
34808
442af3e72671 Added purple_g_value_new() and purple_g_value_free() to util
Ankit Vani <a@nevitus.org>
parents: 34614
diff changeset
995
442af3e72671 Added purple_g_value_new() and purple_g_value_free() to util
Ankit Vani <a@nevitus.org>
parents: 34614
diff changeset
996 /**
35400
a22531410e3f Convert docs from doxygen to gtk-doc format for request.h and util.h
Ankit Vani <a@nevitus.org>
parents: 35394
diff changeset
997 * purple_value_dup:
a22531410e3f Convert docs from doxygen to gtk-doc format for request.h and util.h
Ankit Vani <a@nevitus.org>
parents: 35394
diff changeset
998 * @value: The GValue to duplicate
34822
5c3970547cda Added purple_g_value_dup() to util
Ankit Vani <a@nevitus.org>
parents: 34808
diff changeset
999 *
35400
a22531410e3f Convert docs from doxygen to gtk-doc format for request.h and util.h
Ankit Vani <a@nevitus.org>
parents: 35394
diff changeset
1000 * Duplicates a GValue.
34822
5c3970547cda Added purple_g_value_dup() to util
Ankit Vani <a@nevitus.org>
parents: 34808
diff changeset
1001 *
35393
00f876b129bc Initial replacements for gtk-doc style comments
Ankit Vani <a@nevitus.org>
parents: 35265
diff changeset
1002 * Returns: The duplicated GValue
34822
5c3970547cda Added purple_g_value_dup() to util
Ankit Vani <a@nevitus.org>
parents: 34808
diff changeset
1003 */
35005
bff56dfca65d Renamed purple_g_value_* to purple_value_*
Ankit Vani <a@nevitus.org>
parents: 34935
diff changeset
1004 GValue *purple_value_dup(GValue *value);
34822
5c3970547cda Added purple_g_value_dup() to util
Ankit Vani <a@nevitus.org>
parents: 34808
diff changeset
1005
5c3970547cda Added purple_g_value_dup() to util
Ankit Vani <a@nevitus.org>
parents: 34808
diff changeset
1006 /**
35400
a22531410e3f Convert docs from doxygen to gtk-doc format for request.h and util.h
Ankit Vani <a@nevitus.org>
parents: 35394
diff changeset
1007 * purple_value_free:
a22531410e3f Convert docs from doxygen to gtk-doc format for request.h and util.h
Ankit Vani <a@nevitus.org>
parents: 35394
diff changeset
1008 * @value: The GValue to free.
34808
442af3e72671 Added purple_g_value_new() and purple_g_value_free() to util
Ankit Vani <a@nevitus.org>
parents: 34614
diff changeset
1009 *
35400
a22531410e3f Convert docs from doxygen to gtk-doc format for request.h and util.h
Ankit Vani <a@nevitus.org>
parents: 35394
diff changeset
1010 * Frees a GValue.
34808
442af3e72671 Added purple_g_value_new() and purple_g_value_free() to util
Ankit Vani <a@nevitus.org>
parents: 34614
diff changeset
1011 */
35005
bff56dfca65d Renamed purple_g_value_* to purple_value_*
Ankit Vani <a@nevitus.org>
parents: 34935
diff changeset
1012 void purple_value_free(GValue *value);
34808
442af3e72671 Added purple_g_value_new() and purple_g_value_free() to util
Ankit Vani <a@nevitus.org>
parents: 34614
diff changeset
1013
32787
7072f190d6ad Use G_BEGIN/END_DECLS in public libpurple files. This was
Elliott Sales de Andrade <qulogic@pidgin.im>
parents: 32737
diff changeset
1014 G_END_DECLS
5944
f19df037ac58 [gaim-migrate @ 6385]
Christian Hammond <chipx86@chipx86.com>
parents: 5943
diff changeset
1015
39659
e4dfb99b0cef Fix libpurple header guards using reserved names.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents: 39527
diff changeset
1016 #endif /* PURPLE_UTIL_H */

mercurial