r4888: Don't try to thumbnail zero-byte files. They're either empty, or special and
[rox-filer/translations.git] / ROX-Filer / src / support.h
bloba18fa0c4744f9192e6612abf8815df59cbf2c275
1 /*
2 * ROX-Filer, filer for the ROX desktop project
3 * By Thomas Leonard, <tal197@users.sourceforge.net>.
4 */
6 #ifndef _SUPPORT_H
7 #define _SUPPORT_H
9 #define PRETTY_SIZE_LIMIT 10000
10 #define TIME_FORMAT "%T %d %b %Y"
12 #include <glib-object.h>
14 XMLwrapper *xml_cache_load(const gchar *pathname);
15 int save_xml_file(xmlDocPtr doc, const gchar *filename);
16 xmlDocPtr soap_new(xmlNodePtr *ret_body);
17 char *pathdup(const char *path);
18 const guchar *make_path(const char *dir, const char *leaf);
19 const char *our_host_name(void);
20 const char *our_host_name_for_dnd(void);
21 void debug_free_string(void *data);
22 const char *user_name(uid_t uid);
23 const char *group_name(gid_t gid);
24 const char *format_size(off_t size);
25 const char *format_size_aligned(off_t size);
26 const gchar *format_double_size(double size);
27 char *fork_exec_wait(const char **argv);
28 const char *pretty_permissions(mode_t m);
29 gint applicable(uid_t uid, gid_t gid);
30 char *get_local_path(const EscapedPath *escaped_uri);
31 void close_on_exec(int fd, gboolean close);
32 void set_blocking(int fd, gboolean blocking);
33 char *pretty_time(const time_t *time);
34 guchar *copy_file(const guchar *from, const guchar *to);
35 guchar *shell_escape(const guchar *word);
36 gboolean is_sub_dir(const char *sub, const char *parent);
37 gboolean in_list(const guchar *item, const guchar *list);
38 GPtrArray *split_path(const guchar *path);
39 guchar *get_relative_path(const guchar *from, const guchar *to);
40 int text_to_boolean(const char *text, int defvalue);
41 char *readlink_dup(const char *path);
42 gchar *to_utf8(const gchar *src);
43 gchar *from_utf8(const gchar *src);
44 void ensure_utf8(gchar **string);
45 char *md5_hash(const char *message);
46 gchar *expand_path(const gchar *path);
47 void destroy_glist(GList **list);
48 void null_g_free(gpointer p);
49 CollateKey *collate_key_new(const guchar *name);
50 void collate_key_free(CollateKey *key);
51 int collate_key_cmp(const CollateKey *n1, const CollateKey *n2,
52 gboolean caps_first);
53 gboolean file_exists(const char *path);
54 GPtrArray *list_dir(const guchar *path);
55 gint strcmp2(gconstpointer a, gconstpointer b);
56 int stat_with_timeout(const char *path, struct stat *info);
58 EscapedPath *escape_uri_path(const char *path);
59 EscapedPath *encode_path_as_uri(const guchar *path);
60 gchar *unescape_uri(const EscapedPath *uri);
61 gchar *get_uri_scheme(const EscapedPath *uri);
62 gboolean available_in_path(const char *file);
63 char *get_value_from_desktop_file(const char *path,
64 const char *section,
65 const char *key,
66 GError **error);
67 gboolean get_values_from_desktop_file(const char *path,
68 GError **error,
69 const char *section,
70 const char *key,
71 gchar **value, ...);
72 gchar *build_command_with_path(const char *cmd, const char *path);
74 #endif /* _SUPPORT_H */