Audacious $Id:Doxyfile42802007-03-2104:39:00Znenolod$
|
00001 /* Audacious 00002 * Copyright (C) 2005-2007 Audacious development team. 00003 * 00004 * BMP - Cross-platform multimedia player 00005 * Copyright (C) 2003-2004 BMP development team. 00006 * 00007 * Based on XMMS: 00008 * Copyright (C) 1998-2003 XMMS development team. 00009 * 00010 * This program is free software; you can redistribute it and/or modify 00011 * it under the terms of the GNU General Public License as published by 00012 * the Free Software Foundation; under version 3 of the License. 00013 * 00014 * This program is distributed in the hope that it will be useful, 00015 * but WITHOUT ANY WARRANTY; without even the implied warranty of 00016 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 00017 * GNU General Public License for more details. 00018 * 00019 * You should have received a copy of the GNU General Public License 00020 * along with this program. If not, see <http://www.gnu.org/licenses>. 00021 * 00022 * The Audacious team does not consider modular code linking to 00023 * Audacious or using our public API to be a derived work. 00024 */ 00025 00026 #ifndef AUDACIOUS_STRINGS_H 00027 #define AUDACIOUS_STRINGS_H 00028 00029 #include <stdlib.h> 00030 #include <glib.h> 00031 00032 G_BEGIN_DECLS 00033 00034 gchar *str_append(gchar * str, const gchar * add_str); 00035 gchar *str_replace(gchar * str, gchar * new_str); 00036 void str_replace_in(gchar ** str, gchar * new_str); 00037 00038 gboolean str_has_prefix_nocase(const gchar * str, const gchar * prefix); 00039 gboolean str_has_suffix_nocase(const gchar * str, const gchar * suffix); 00040 gboolean str_has_suffixes_nocase(const gchar * str, gchar * const *suffixes); 00041 00042 gchar *str_assert_utf8(const gchar *str); 00043 00044 void str_set_utf8_impl (gchar * (* stu_impl) (const gchar *), 00045 gchar * (* stuf_impl) (const gchar *, gssize, gsize *, gsize *, GError * *)); 00046 gchar * str_to_utf8 (const gchar * str); 00047 gchar * str_to_utf8_full (const gchar * str, gssize len, gsize * bytes_read, 00048 gsize * bytes_written, GError * * err); 00049 00050 const gchar *str_skip_chars(const gchar * str, const gchar * chars); 00051 00052 gchar *convert_dos_path(gchar * text); 00053 00054 gchar *filename_get_subtune(const gchar * filename, gint * track); 00055 gchar *filename_split_subtune(const gchar * filename, gint * track); 00056 00057 void string_replace_char (gchar * string, gchar old_str, gchar new_str); 00058 void string_decode_percent (gchar * string); 00059 gchar * string_encode_percent (const gchar * string, gboolean is_filename); 00060 00061 gboolean uri_is_utf8 (const gchar * uri, gboolean warn); 00062 gchar * uri_to_utf8 (const gchar * uri); 00063 void uri_check_utf8 (gchar * * uri, gboolean warn); 00064 gchar * filename_to_uri (const gchar * filename); 00065 gchar * uri_to_filename (const gchar * uri); 00066 gchar * uri_to_display (const gchar * uri); 00067 00068 gchar * uri_get_extension (const gchar * uri); 00069 00070 void string_cut_extension(gchar *string); 00071 gint string_compare (const gchar * a, const gchar * b); 00072 gint string_compare_encoded (const gchar * a, const gchar * b); 00073 00074 const void * memfind (const void * mem, gint size, const void * token, gint 00075 length); 00076 00077 gchar *str_replace_fragment(gchar *s, gint size, const gchar *old_str, const gchar *new_str); 00078 00079 void string_canonize_case(gchar *string); 00080 00081 G_END_DECLS 00082 00083 #endif /* AUDACIOUS_STRINGS_H */