1 /* GIO - GLib Input, Output and Streaming Library 2 * 3 * Copyright (C) 2006-2007 Red Hat, Inc. 4 * 5 * This library is free software; you can redistribute it and/or 6 * modify it under the terms of the GNU Lesser General Public 7 * License as published by the Free Software Foundation; either 8 * version 2.1 of the License, or (at your option) any later version. 9 * 10 * This library is distributed in the hope that it will be useful, 11 * but WITHOUT ANY WARRANTY; without even the implied warranty of 12 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU 13 * Lesser General Public License for more details. 14 * 15 * You should have received a copy of the GNU Lesser General 16 * Public License along with this library; if not, see <http://www.gnu.org/licenses/>. 17 * 18 * Author: Alexander Larsson <alexl@redhat.com> 19 */ 20 21 #ifndef __G_CONTENT_TYPE_H__ 22 #define __G_CONTENT_TYPE_H__ 23 24 #if !defined (__GIO_GIO_H_INSIDE__) && !defined (GIO_COMPILATION) 25 #error "Only <gio/gio.h> can be included directly." 26 #endif 27 28 #include <gio/giotypes.h> 29 30 G_BEGIN_DECLS 31 32 GLIB_AVAILABLE_IN_ALL 33 gboolean g_content_type_equals (const gchar *type1, 34 const gchar *type2); 35 GLIB_AVAILABLE_IN_ALL 36 gboolean g_content_type_is_a (const gchar *type, 37 const gchar *supertype); 38 GLIB_AVAILABLE_IN_2_52 39 gboolean g_content_type_is_mime_type (const gchar *type, 40 const gchar *mime_type); 41 GLIB_AVAILABLE_IN_ALL 42 gboolean g_content_type_is_unknown (const gchar *type); 43 GLIB_AVAILABLE_IN_ALL 44 gchar * g_content_type_get_description (const gchar *type); 45 GLIB_AVAILABLE_IN_ALL 46 gchar * g_content_type_get_mime_type (const gchar *type); 47 GLIB_AVAILABLE_IN_ALL 48 GIcon * g_content_type_get_icon (const gchar *type); 49 GLIB_AVAILABLE_IN_2_34 50 GIcon * g_content_type_get_symbolic_icon (const gchar *type); 51 GLIB_AVAILABLE_IN_2_34 52 gchar * g_content_type_get_generic_icon_name (const gchar *type); 53 54 GLIB_AVAILABLE_IN_ALL 55 gboolean g_content_type_can_be_executable (const gchar *type); 56 57 GLIB_AVAILABLE_IN_ALL 58 gchar * g_content_type_from_mime_type (const gchar *mime_type); 59 60 GLIB_AVAILABLE_IN_ALL 61 gchar * g_content_type_guess (const gchar *filename, 62 const guchar *data, 63 gsize data_size, 64 gboolean *result_uncertain); 65 66 GLIB_AVAILABLE_IN_ALL 67 gchar ** g_content_type_guess_for_tree (GFile *root); 68 69 GLIB_AVAILABLE_IN_ALL 70 GList * g_content_types_get_registered (void); 71 72 /*< private >*/ 73 #ifndef __GTK_DOC_IGNORE__ 74 GLIB_AVAILABLE_IN_2_60 75 const gchar * const *g_content_type_get_mime_dirs (void); 76 GLIB_AVAILABLE_IN_2_60 77 void g_content_type_set_mime_dirs (const gchar * const *dirs); 78 #endif /* __GTK_DOC_IGNORE__ */ 79 80 G_END_DECLS 81 82 #endif /* __G_CONTENT_TYPE_H__ */ 83