1 | /* GIO - GLib Input, Output and Streaming Library |
2 | * |
3 | * Copyright (C) 2006-2007 Red Hat, Inc. |
4 | * 2009 Benjamin Otte |
5 | * |
6 | * This library is free software; you can redistribute it and/or |
7 | * modify it under the terms of the GNU Lesser General Public |
8 | * License as published by the Free Software Foundation; either |
9 | * version 2.1 of the License, or (at your option) any later version. |
10 | * |
11 | * This library is distributed in the hope that it will be useful, |
12 | * but WITHOUT ANY WARRANTY; without even the implied warranty of |
13 | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU |
14 | * Lesser General Public License for more details. |
15 | * |
16 | * You should have received a copy of the GNU Lesser General |
17 | * Public License along with this library; if not, see <http://www.gnu.org/licenses/>. |
18 | * |
19 | * Author: Benjamin Otte <otte@gnome.org> |
20 | */ |
21 | |
22 | #ifndef __G_FILE_INFO_PRIV_H__ |
23 | #define __G_FILE_INFO_PRIV_H__ |
24 | |
25 | #include "gfileinfo.h" |
26 | |
27 | #define G_FILE_ATTRIBUTE_ID_STANDARD_TYPE (1048576 + 1) |
28 | #define G_FILE_ATTRIBUTE_ID_STANDARD_IS_HIDDEN (1048576 + 2) |
29 | #define G_FILE_ATTRIBUTE_ID_STANDARD_IS_BACKUP (1048576 + 3) |
30 | #define G_FILE_ATTRIBUTE_ID_STANDARD_IS_SYMLINK (1048576 + 4) |
31 | #define G_FILE_ATTRIBUTE_ID_STANDARD_IS_VIRTUAL (1048576 + 5) |
32 | #define G_FILE_ATTRIBUTE_ID_STANDARD_NAME (1048576 + 6) |
33 | #define G_FILE_ATTRIBUTE_ID_STANDARD_DISPLAY_NAME (1048576 + 7) |
34 | #define G_FILE_ATTRIBUTE_ID_STANDARD_EDIT_NAME (1048576 + 8) |
35 | #define G_FILE_ATTRIBUTE_ID_STANDARD_COPY_NAME (1048576 + 9) |
36 | #define G_FILE_ATTRIBUTE_ID_STANDARD_DESCRIPTION (1048576 + 10) |
37 | #define G_FILE_ATTRIBUTE_ID_STANDARD_ICON (1048576 + 11) |
38 | #define G_FILE_ATTRIBUTE_ID_STANDARD_CONTENT_TYPE (1048576 + 12) |
39 | #define G_FILE_ATTRIBUTE_ID_STANDARD_FAST_CONTENT_TYPE (1048576 + 13) |
40 | #define G_FILE_ATTRIBUTE_ID_STANDARD_SIZE (1048576 + 14) |
41 | #define G_FILE_ATTRIBUTE_ID_STANDARD_ALLOCATED_SIZE (1048576 + 15) |
42 | #define G_FILE_ATTRIBUTE_ID_STANDARD_SYMLINK_TARGET (1048576 + 16) |
43 | #define G_FILE_ATTRIBUTE_ID_STANDARD_TARGET_URI (1048576 + 17) |
44 | #define G_FILE_ATTRIBUTE_ID_STANDARD_SORT_ORDER (1048576 + 18) |
45 | #define G_FILE_ATTRIBUTE_ID_STANDARD_SYMBOLIC_ICON (1048576 + 19) |
46 | #define G_FILE_ATTRIBUTE_ID_STANDARD_IS_VOLATILE (1048576 + 20) |
47 | #define G_FILE_ATTRIBUTE_ID_ETAG_VALUE (2097152 + 1) |
48 | #define G_FILE_ATTRIBUTE_ID_ID_FILE (3145728 + 1) |
49 | #define G_FILE_ATTRIBUTE_ID_ID_FILESYSTEM (3145728 + 2) |
50 | #define G_FILE_ATTRIBUTE_ID_ACCESS_CAN_READ (4194304 + 1) |
51 | #define G_FILE_ATTRIBUTE_ID_ACCESS_CAN_WRITE (4194304 + 2) |
52 | #define G_FILE_ATTRIBUTE_ID_ACCESS_CAN_EXECUTE (4194304 + 3) |
53 | #define G_FILE_ATTRIBUTE_ID_ACCESS_CAN_DELETE (4194304 + 4) |
54 | #define G_FILE_ATTRIBUTE_ID_ACCESS_CAN_TRASH (4194304 + 5) |
55 | #define G_FILE_ATTRIBUTE_ID_ACCESS_CAN_RENAME (4194304 + 6) |
56 | #define G_FILE_ATTRIBUTE_ID_MOUNTABLE_CAN_MOUNT (5242880 + 1) |
57 | #define G_FILE_ATTRIBUTE_ID_MOUNTABLE_CAN_UNMOUNT (5242880 + 2) |
58 | #define G_FILE_ATTRIBUTE_ID_MOUNTABLE_CAN_EJECT (5242880 + 3) |
59 | #define G_FILE_ATTRIBUTE_ID_MOUNTABLE_UNIX_DEVICE (5242880 + 4) |
60 | #define G_FILE_ATTRIBUTE_ID_MOUNTABLE_UNIX_DEVICE_FILE (5242880 + 5) |
61 | #define G_FILE_ATTRIBUTE_ID_MOUNTABLE_HAL_UDI (5242880 + 6) |
62 | #define G_FILE_ATTRIBUTE_ID_MOUNTABLE_CAN_START (5242880 + 7) |
63 | #define G_FILE_ATTRIBUTE_ID_MOUNTABLE_CAN_START_DEGRADED (5242880 + 8) |
64 | #define G_FILE_ATTRIBUTE_ID_MOUNTABLE_CAN_STOP (5242880 + 9) |
65 | #define G_FILE_ATTRIBUTE_ID_MOUNTABLE_START_STOP_TYPE (5242880 + 10) |
66 | #define G_FILE_ATTRIBUTE_ID_MOUNTABLE_CAN_POLL (5242880 + 11) |
67 | #define G_FILE_ATTRIBUTE_ID_MOUNTABLE_IS_MEDIA_CHECK_AUTOMATIC (5242880 + 12) |
68 | #define G_FILE_ATTRIBUTE_ID_TIME_MODIFIED (6291456 + 1) |
69 | #define G_FILE_ATTRIBUTE_ID_TIME_MODIFIED_USEC (6291456 + 2) |
70 | #define G_FILE_ATTRIBUTE_ID_TIME_ACCESS (6291456 + 3) |
71 | #define G_FILE_ATTRIBUTE_ID_TIME_ACCESS_USEC (6291456 + 4) |
72 | #define G_FILE_ATTRIBUTE_ID_TIME_CHANGED (6291456 + 5) |
73 | #define G_FILE_ATTRIBUTE_ID_TIME_CHANGED_USEC (6291456 + 6) |
74 | #define G_FILE_ATTRIBUTE_ID_TIME_CREATED (6291456 + 7) |
75 | #define G_FILE_ATTRIBUTE_ID_TIME_CREATED_USEC (6291456 + 8) |
76 | #define G_FILE_ATTRIBUTE_ID_UNIX_DEVICE (7340032 + 1) |
77 | #define G_FILE_ATTRIBUTE_ID_UNIX_INODE (7340032 + 2) |
78 | #define G_FILE_ATTRIBUTE_ID_UNIX_MODE (7340032 + 3) |
79 | #define G_FILE_ATTRIBUTE_ID_UNIX_NLINK (7340032 + 4) |
80 | #define G_FILE_ATTRIBUTE_ID_UNIX_UID (7340032 + 5) |
81 | #define G_FILE_ATTRIBUTE_ID_UNIX_GID (7340032 + 6) |
82 | #define G_FILE_ATTRIBUTE_ID_UNIX_RDEV (7340032 + 7) |
83 | #define G_FILE_ATTRIBUTE_ID_UNIX_BLOCK_SIZE (7340032 + 8) |
84 | #define G_FILE_ATTRIBUTE_ID_UNIX_BLOCKS (7340032 + 9) |
85 | #define G_FILE_ATTRIBUTE_ID_UNIX_IS_MOUNTPOINT (7340032 + 10) |
86 | #define G_FILE_ATTRIBUTE_ID_DOS_IS_ARCHIVE (8388608 + 1) |
87 | #define G_FILE_ATTRIBUTE_ID_DOS_IS_SYSTEM (8388608 + 2) |
88 | #define G_FILE_ATTRIBUTE_ID_DOS_IS_MOUNTPOINT (8388608 + 3) |
89 | #define G_FILE_ATTRIBUTE_ID_DOS_REPARSE_POINT_TAG (8388608 + 4) |
90 | #define G_FILE_ATTRIBUTE_ID_OWNER_USER (9437184 + 1) |
91 | #define G_FILE_ATTRIBUTE_ID_OWNER_USER_REAL (9437184 + 2) |
92 | #define G_FILE_ATTRIBUTE_ID_OWNER_GROUP (9437184 + 3) |
93 | #define G_FILE_ATTRIBUTE_ID_THUMBNAIL_PATH (10485760 + 1) |
94 | #define G_FILE_ATTRIBUTE_ID_THUMBNAILING_FAILED (10485760 + 2) |
95 | #define G_FILE_ATTRIBUTE_ID_THUMBNAIL_IS_VALID (10485760 + 3) |
96 | #define G_FILE_ATTRIBUTE_ID_PREVIEW_ICON (11534336 + 1) |
97 | #define G_FILE_ATTRIBUTE_ID_FILESYSTEM_SIZE (12582912 + 1) |
98 | #define G_FILE_ATTRIBUTE_ID_FILESYSTEM_FREE (12582912 + 2) |
99 | #define G_FILE_ATTRIBUTE_ID_FILESYSTEM_TYPE (12582912 + 3) |
100 | #define G_FILE_ATTRIBUTE_ID_FILESYSTEM_READONLY (12582912 + 4) |
101 | #define G_FILE_ATTRIBUTE_ID_FILESYSTEM_USE_PREVIEW (12582912 + 5) |
102 | #define G_FILE_ATTRIBUTE_ID_GVFS_BACKEND (13631488 + 1) |
103 | #define G_FILE_ATTRIBUTE_ID_SELINUX_CONTEXT (14680064 + 1) |
104 | #define G_FILE_ATTRIBUTE_ID_TRASH_ITEM_COUNT (15728640 + 1) |
105 | #define G_FILE_ATTRIBUTE_ID_TRASH_ORIG_PATH (15728640 + 2) |
106 | #define G_FILE_ATTRIBUTE_ID_TRASH_DELETION_DATE (15728640 + 3) |
107 | |
108 | gboolean _g_file_attribute_matcher_matches_id (GFileAttributeMatcher *matcher, |
109 | guint32 id); |
110 | |
111 | void _g_file_info_set_attribute_by_id (GFileInfo *info, |
112 | guint32 attribute, |
113 | GFileAttributeType type, |
114 | gpointer value_p); |
115 | void _g_file_info_set_attribute_string_by_id (GFileInfo *info, |
116 | guint32 attribute, |
117 | const char *attr_value); |
118 | void _g_file_info_set_attribute_byte_string_by_id (GFileInfo *info, |
119 | guint32 attribute, |
120 | const char *attr_value); |
121 | void _g_file_info_set_attribute_boolean_by_id (GFileInfo *info, |
122 | guint32 attribute, |
123 | gboolean attr_value); |
124 | void _g_file_info_set_attribute_uint32_by_id (GFileInfo *info, |
125 | guint32 attribute, |
126 | guint32 attr_value); |
127 | void _g_file_info_set_attribute_int32_by_id (GFileInfo *info, |
128 | guint32 attribute, |
129 | gint32 attr_value); |
130 | void _g_file_info_set_attribute_uint64_by_id (GFileInfo *info, |
131 | guint32 attribute, |
132 | guint64 attr_value); |
133 | void _g_file_info_set_attribute_int64_by_id (GFileInfo *info, |
134 | guint32 attribute, |
135 | gint64 attr_value); |
136 | void _g_file_info_set_attribute_object_by_id (GFileInfo *info, |
137 | guint32 attribute, |
138 | GObject *attr_value); |
139 | void _g_file_info_set_attribute_stringv_by_id (GFileInfo *info, |
140 | guint32 attribute, |
141 | char **attr_value); |
142 | |
143 | |
144 | #endif /* __G_FILE_INFO_PRIV_H__ */ |
145 | |