| 12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838485868788899091929394959697989910010110210310410510610710810911011111211311411511611711811912012112212312412512612712812913013113213313413513613713813914014114214314414514614714814915015115215315415515615715815916016116216316416516616716816917017117217317417517617717817918018118218318418518618718818919019119219319419519619719819920020120220320420520620720820921021121221321421521621721821922022122222322422522622722822923023123223323423523623723823924024124224324424524624724824925025125225325425525625725825926026126226326426526626726826927027127227327427527627727827928028128228328428528628728828929029129229329429529629729829930030130230330430530630730830931031131231331431531631731831932032132232332432532632732832933033133233333433533633733833934034134234334434534634734834935035135235335435535635735835936036136236336436536636736836937037137237337437537637737837938038138238338438538638738838939039139239339439539639739839940040140240340440540640740840941041141241341441541641741841942042142242342442542642742842943043143243343443543643743843944044144244344444544644744844945045145245345445545645745845946046146246346446546646746846947047147247347447547647747847948048148248348448548648748848949049149249349449549649749849950050150250350450550650750850951051151251351451551651751851952052152252352452552652752852953053153253353453553653753853954054154254354454554654754854955055155255355455555655755855956056156256356456556656756856957057157257357457557657757857958058158258358458558658758858959059159259359459559659759859960060160260360460560660760860961061161261361461561661761861962062162262362462562662762862963063163263363463563663763863964064164264364464564664764864965065165265365465565665765865966066166266366466566666766866967067167267367467567667767867968068168268368468568668768868969069169269369469569669769869970070170270370470570670770870971071171271371471571671771871972072172272372472572672772872973073173273373473573673773873974074174274374474574674774874975075175275375475575675775875976076176276376476576676776876977077177277377477577677777877978078178278378478578678778878979079179279379479579679779879980080180280380480580680780880981081181281381481581681781881982082182282382482582682782882983083183283383483583683783883984084184284384484584684784884985085185285385485585685785885986086186286386486586686786886987087187287387487587687787887988088188288388488588688788888989089189289389489589689789889990090190290390490590690790890991091191291391491591691791891992092192292392492592692792892993093193293393493593693793893994094194294394494594694794894995095195295395495595695795895996096196296396496596696796896997097197297397497597697797897998098198298398498598698798898999099199299399499599699799899910001001100210031004100510061007100810091010101110121013101410151016101710181019102010211022102310241025102610271028102910301031103210331034103510361037103810391040104110421043104410451046104710481049105010511052105310541055105610571058105910601061106210631064106510661067106810691070107110721073107410751076107710781079108010811082108310841085108610871088108910901091109210931094109510961097109810991100110111021103110411051106110711081109111011111112111311141115111611171118111911201121112211231124112511261127112811291130113111321133113411351136113711381139114011411142114311441145114611471148114911501151115211531154115511561157115811591160116111621163116411651166116711681169117011711172117311741175117611771178117911801181118211831184118511861187118811891190119111921193119411951196119711981199120012011202120312041205120612071208120912101211121212131214121512161217121812191220122112221223122412251226122712281229123012311232123312341235123612371238123912401241124212431244124512461247124812491250125112521253125412551256125712581259126012611262126312641265126612671268126912701271127212731274127512761277127812791280128112821283128412851286128712881289129012911292129312941295129612971298129913001301130213031304130513061307130813091310131113121313131413151316131713181319132013211322132313241325132613271328132913301331133213331334133513361337133813391340134113421343134413451346134713481349135013511352135313541355135613571358135913601361136213631364136513661367136813691370137113721373137413751376137713781379138013811382138313841385138613871388138913901391139213931394139513961397139813991400140114021403140414051406140714081409141014111412141314141415141614171418141914201421142214231424142514261427142814291430143114321433143414351436143714381439144014411442144314441445144614471448144914501451145214531454145514561457145814591460146114621463146414651466146714681469147014711472147314741475147614771478147914801481148214831484148514861487148814891490149114921493149414951496149714981499150015011502150315041505150615071508150915101511151215131514151515161517151815191520152115221523152415251526152715281529153015311532153315341535153615371538153915401541 |
- /* GIO - GLib Input, Output and Streaming Library
- *
- * Copyright (C) 2006-2007 Red Hat, Inc.
- *
- * SPDX-License-Identifier: LGPL-2.1-or-later
- *
- * This library is free software; you can redistribute it and/or
- * modify it under the terms of the GNU Lesser General Public
- * License as published by the Free Software Foundation; either
- * version 2.1 of the License, or (at your option) any later version.
- *
- * This library is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- * Lesser General Public License for more details.
- *
- * You should have received a copy of the GNU Lesser General
- * Public License along with this library; if not, see <http://www.gnu.org/licenses/>.
- *
- * Author: Alexander Larsson <alexl@redhat.com>
- */
- #ifndef __G_FILE_INFO_H__
- #define __G_FILE_INFO_H__
- #if !defined (__GIO_GIO_H_INSIDE__) && !defined (GIO_COMPILATION)
- #error "Only <gio/gio.h> can be included directly."
- #endif
- #include <gio/giotypes.h>
- G_BEGIN_DECLS
- #define G_TYPE_FILE_INFO (g_file_info_get_type ())
- #define G_FILE_INFO(o) (G_TYPE_CHECK_INSTANCE_CAST ((o), G_TYPE_FILE_INFO, GFileInfo))
- #define G_FILE_INFO_CLASS(k) (G_TYPE_CHECK_CLASS_CAST((k), G_TYPE_FILE_INFO, GFileInfoClass))
- #define G_IS_FILE_INFO(o) (G_TYPE_CHECK_INSTANCE_TYPE ((o), G_TYPE_FILE_INFO))
- #define G_IS_FILE_INFO_CLASS(k) (G_TYPE_CHECK_CLASS_TYPE ((k), G_TYPE_FILE_INFO))
- #define G_FILE_INFO_GET_CLASS(o) (G_TYPE_INSTANCE_GET_CLASS ((o), G_TYPE_FILE_INFO, GFileInfoClass))
- typedef struct _GFileInfoClass GFileInfoClass;
- /* Common Attributes: */
- /**
- * G_FILE_ATTRIBUTE_STANDARD_TYPE:
- *
- * A key in the "standard" namespace for storing file types.
- *
- * Corresponding #GFileAttributeType is %G_FILE_ATTRIBUTE_TYPE_UINT32.
- *
- * The value for this key should contain a #GFileType.
- **/
- #define G_FILE_ATTRIBUTE_STANDARD_TYPE "standard::type" /* uint32 (GFileType) */
- /**
- * G_FILE_ATTRIBUTE_STANDARD_IS_HIDDEN:
- *
- * A key in the "standard" namespace for checking if a file is hidden.
- *
- * Corresponding #GFileAttributeType is %G_FILE_ATTRIBUTE_TYPE_BOOLEAN.
- **/
- #define G_FILE_ATTRIBUTE_STANDARD_IS_HIDDEN "standard::is-hidden" /* boolean */
- /**
- * G_FILE_ATTRIBUTE_STANDARD_IS_BACKUP:
- *
- * A key in the "standard" namespace for checking if a file is a backup file.
- *
- * Corresponding #GFileAttributeType is %G_FILE_ATTRIBUTE_TYPE_BOOLEAN.
- **/
- #define G_FILE_ATTRIBUTE_STANDARD_IS_BACKUP "standard::is-backup" /* boolean */
- /**
- * G_FILE_ATTRIBUTE_STANDARD_IS_SYMLINK:
- *
- * A key in the "standard" namespace for checking if the file is a symlink.
- * Typically the actual type is something else, if we followed the symlink
- * to get the type.
- *
- * On Windows NTFS mountpoints are considered to be symlinks as well.
- *
- * Corresponding #GFileAttributeType is %G_FILE_ATTRIBUTE_TYPE_BOOLEAN.
- **/
- #define G_FILE_ATTRIBUTE_STANDARD_IS_SYMLINK "standard::is-symlink" /* boolean */
- /**
- * G_FILE_ATTRIBUTE_STANDARD_IS_VIRTUAL:
- *
- * A key in the "standard" namespace for checking if a file is virtual.
- *
- * Corresponding #GFileAttributeType is %G_FILE_ATTRIBUTE_TYPE_BOOLEAN.
- **/
- #define G_FILE_ATTRIBUTE_STANDARD_IS_VIRTUAL "standard::is-virtual" /* boolean */
- /**
- * G_FILE_ATTRIBUTE_STANDARD_IS_VOLATILE:
- *
- * A key in the "standard" namespace for checking if a file is
- * volatile. This is meant for opaque, non-POSIX-like backends to
- * indicate that the URI is not persistent. Applications should look
- * at %G_FILE_ATTRIBUTE_STANDARD_SYMLINK_TARGET for the persistent URI.
- *
- * Corresponding #GFileAttributeType is %G_FILE_ATTRIBUTE_TYPE_BOOLEAN.
- *
- * Since: 2.46
- **/
- #define G_FILE_ATTRIBUTE_STANDARD_IS_VOLATILE "standard::is-volatile" /* boolean */
- /**
- * G_FILE_ATTRIBUTE_STANDARD_NAME:
- *
- * A key in the "standard" namespace for getting the name of the file.
- *
- * The name is the on-disk filename which may not be in any known encoding,
- * and can thus not be generally displayed as is. It is guaranteed to be set on
- * every file.
- *
- * Use %G_FILE_ATTRIBUTE_STANDARD_DISPLAY_NAME if you need to display the
- * name in a user interface.
- *
- * Corresponding #GFileAttributeType is %G_FILE_ATTRIBUTE_TYPE_BYTE_STRING.
- **/
- #define G_FILE_ATTRIBUTE_STANDARD_NAME "standard::name" /* byte string */
- /**
- * G_FILE_ATTRIBUTE_STANDARD_DISPLAY_NAME:
- *
- * A key in the "standard" namespace for getting the display name of the file.
- *
- * A display name is guaranteed to be in UTF-8 and can thus be displayed in
- * the UI. It is guaranteed to be set on every file.
- *
- * Corresponding #GFileAttributeType is %G_FILE_ATTRIBUTE_TYPE_STRING.
- **/
- #define G_FILE_ATTRIBUTE_STANDARD_DISPLAY_NAME "standard::display-name" /* string */
- /**
- * G_FILE_ATTRIBUTE_STANDARD_EDIT_NAME:
- *
- * A key in the "standard" namespace for edit name of the file.
- *
- * An edit name is similar to the display name, but it is meant to be
- * used when you want to rename the file in the UI. The display name
- * might contain information you don't want in the new filename (such as
- * "(invalid unicode)" if the filename was in an invalid encoding).
- *
- * Corresponding #GFileAttributeType is %G_FILE_ATTRIBUTE_TYPE_STRING.
- **/
- #define G_FILE_ATTRIBUTE_STANDARD_EDIT_NAME "standard::edit-name" /* string */
- /**
- * G_FILE_ATTRIBUTE_STANDARD_COPY_NAME:
- *
- * A key in the "standard" namespace for getting the copy name of the file.
- *
- * The copy name is an optional version of the name. If available it's always
- * in UTF8, and corresponds directly to the original filename (only transcoded to
- * UTF8). This is useful if you want to copy the file to another filesystem that
- * might have a different encoding. If the filename is not a valid string in the
- * encoding selected for the filesystem it is in then the copy name will not be set.
- *
- * Corresponding #GFileAttributeType is %G_FILE_ATTRIBUTE_TYPE_STRING.
- **/
- #define G_FILE_ATTRIBUTE_STANDARD_COPY_NAME "standard::copy-name" /* string */
- /**
- * G_FILE_ATTRIBUTE_STANDARD_DESCRIPTION:
- *
- * A key in the "standard" namespace for getting the description of the file.
- *
- * The description is a utf8 string that describes the file, generally containing
- * the filename, but can also contain further information. Example descriptions
- * could be "filename (on hostname)" for a remote file or "filename (in trash)"
- * for a file in the trash. This is useful for instance as the window title
- * when displaying a directory or for a bookmarks menu.
- *
- * Corresponding #GFileAttributeType is %G_FILE_ATTRIBUTE_TYPE_STRING.
- **/
- #define G_FILE_ATTRIBUTE_STANDARD_DESCRIPTION "standard::description" /* string */
- /**
- * G_FILE_ATTRIBUTE_STANDARD_ICON:
- *
- * A key in the "standard" namespace for getting the icon for the file.
- *
- * Corresponding #GFileAttributeType is %G_FILE_ATTRIBUTE_TYPE_OBJECT.
- *
- * The value for this key should contain a #GIcon.
- **/
- #define G_FILE_ATTRIBUTE_STANDARD_ICON "standard::icon" /* object (GIcon) */
- /**
- * G_FILE_ATTRIBUTE_STANDARD_SYMBOLIC_ICON:
- *
- * A key in the "standard" namespace for getting the symbolic icon for the file.
- *
- * Corresponding #GFileAttributeType is %G_FILE_ATTRIBUTE_TYPE_OBJECT.
- *
- * The value for this key should contain a #GIcon.
- *
- * Since: 2.34
- **/
- #define G_FILE_ATTRIBUTE_STANDARD_SYMBOLIC_ICON "standard::symbolic-icon" /* object (GIcon) */
- /**
- * G_FILE_ATTRIBUTE_STANDARD_CONTENT_TYPE:
- *
- * A key in the "standard" namespace for getting the content type of the file.
- *
- * Corresponding #GFileAttributeType is %G_FILE_ATTRIBUTE_TYPE_STRING.
- *
- * The value for this key should contain a valid content type.
- **/
- #define G_FILE_ATTRIBUTE_STANDARD_CONTENT_TYPE "standard::content-type" /* string */
- /**
- * G_FILE_ATTRIBUTE_STANDARD_FAST_CONTENT_TYPE:
- *
- * A key in the "standard" namespace for getting the fast content type.
- *
- * The fast content type isn't as reliable as the regular one, as it
- * only uses the filename to guess it, but it is faster to calculate than the
- * regular content type.
- *
- * Corresponding #GFileAttributeType is %G_FILE_ATTRIBUTE_TYPE_STRING.
- *
- **/
- #define G_FILE_ATTRIBUTE_STANDARD_FAST_CONTENT_TYPE "standard::fast-content-type" /* string */
- /**
- * G_FILE_ATTRIBUTE_STANDARD_SIZE:
- *
- * A key in the "standard" namespace for getting the file's size (in bytes).
- *
- * Corresponding #GFileAttributeType is %G_FILE_ATTRIBUTE_TYPE_UINT64.
- **/
- #define G_FILE_ATTRIBUTE_STANDARD_SIZE "standard::size" /* uint64 */
- /**
- * G_FILE_ATTRIBUTE_STANDARD_ALLOCATED_SIZE:
- *
- * A key in the "standard" namespace for getting the amount of disk space
- * that is consumed by the file (in bytes).
- *
- * This will generally be larger than the file size (due to block size
- * overhead) but can occasionally be smaller (for example, for sparse files).
- *
- * Corresponding #GFileAttributeType is %G_FILE_ATTRIBUTE_TYPE_UINT64.
- *
- * Since: 2.20
- **/
- #define G_FILE_ATTRIBUTE_STANDARD_ALLOCATED_SIZE "standard::allocated-size" /* uint64 */
- /**
- * G_FILE_ATTRIBUTE_STANDARD_SYMLINK_TARGET:
- *
- * A key in the "standard" namespace for getting the symlink target, if the file
- * is a symlink.
- *
- * Corresponding #GFileAttributeType is %G_FILE_ATTRIBUTE_TYPE_BYTE_STRING.
- **/
- #define G_FILE_ATTRIBUTE_STANDARD_SYMLINK_TARGET "standard::symlink-target" /* byte string */
- /**
- * G_FILE_ATTRIBUTE_STANDARD_TARGET_URI:
- *
- * A key in the "standard" namespace for getting the target URI for the file, in
- * the case of %G_FILE_TYPE_SHORTCUT or %G_FILE_TYPE_MOUNTABLE files.
- *
- * Corresponding #GFileAttributeType is %G_FILE_ATTRIBUTE_TYPE_STRING.
- **/
- #define G_FILE_ATTRIBUTE_STANDARD_TARGET_URI "standard::target-uri" /* string */
- /**
- * G_FILE_ATTRIBUTE_STANDARD_SORT_ORDER:
- *
- * A key in the "standard" namespace for setting the sort order of a file.
- *
- * Corresponding #GFileAttributeType is %G_FILE_ATTRIBUTE_TYPE_INT32.
- *
- * An example use would be in file managers, which would use this key
- * to set the order files are displayed. Files with smaller sort order
- * should be sorted first, and files without sort order as if sort order
- * was zero.
- **/
- #define G_FILE_ATTRIBUTE_STANDARD_SORT_ORDER "standard::sort-order" /* int32 */
- /* Entity tags, used to avoid missing updates on save */
- /**
- * G_FILE_ATTRIBUTE_ETAG_VALUE:
- *
- * A key in the "etag" namespace for getting the value of the file's
- * entity tag.
- *
- * Corresponding #GFileAttributeType is %G_FILE_ATTRIBUTE_TYPE_STRING.
- **/
- #define G_FILE_ATTRIBUTE_ETAG_VALUE "etag::value" /* string */
- /* File identifier, for e.g. avoiding loops when doing recursive
- * directory scanning
- */
- /**
- * G_FILE_ATTRIBUTE_ID_FILE:
- *
- * A key in the "id" namespace for getting a file identifier.
- *
- * Corresponding #GFileAttributeType is %G_FILE_ATTRIBUTE_TYPE_STRING.
- *
- * An example use would be during listing files, to avoid recursive
- * directory scanning.
- **/
- #define G_FILE_ATTRIBUTE_ID_FILE "id::file" /* string */
- /**
- * G_FILE_ATTRIBUTE_ID_FILESYSTEM:
- *
- * A key in the "id" namespace for getting the file system identifier.
- *
- * Corresponding #GFileAttributeType is %G_FILE_ATTRIBUTE_TYPE_STRING.
- *
- * An example use would be during drag and drop to see if the source
- * and target are on the same filesystem (default to move) or not (default
- * to copy).
- **/
- #define G_FILE_ATTRIBUTE_ID_FILESYSTEM "id::filesystem" /* string */
- /* Calculated Access Rights for current user */
- /**
- * G_FILE_ATTRIBUTE_ACCESS_CAN_READ:
- *
- * A key in the "access" namespace for getting read privileges.
- *
- * Corresponding #GFileAttributeType is %G_FILE_ATTRIBUTE_TYPE_BOOLEAN.
- *
- * This attribute will be %TRUE if the user is able to read the file.
- **/
- #define G_FILE_ATTRIBUTE_ACCESS_CAN_READ "access::can-read" /* boolean */
- /**
- * G_FILE_ATTRIBUTE_ACCESS_CAN_WRITE:
- *
- * A key in the "access" namespace for getting write privileges.
- *
- * Corresponding #GFileAttributeType is %G_FILE_ATTRIBUTE_TYPE_BOOLEAN.
- *
- * This attribute will be %TRUE if the user is able to write to the file.
- **/
- #define G_FILE_ATTRIBUTE_ACCESS_CAN_WRITE "access::can-write" /* boolean */
- /**
- * G_FILE_ATTRIBUTE_ACCESS_CAN_EXECUTE:
- *
- * A key in the "access" namespace for getting execution privileges.
- *
- * Corresponding #GFileAttributeType is %G_FILE_ATTRIBUTE_TYPE_BOOLEAN.
- *
- * This attribute will be %TRUE if the user is able to execute the file.
- **/
- #define G_FILE_ATTRIBUTE_ACCESS_CAN_EXECUTE "access::can-execute" /* boolean */
- /**
- * G_FILE_ATTRIBUTE_ACCESS_CAN_DELETE:
- *
- * A key in the "access" namespace for checking deletion privileges.
- *
- * Corresponding #GFileAttributeType is %G_FILE_ATTRIBUTE_TYPE_BOOLEAN.
- *
- * This attribute will be %TRUE if the user is able to delete the file.
- **/
- #define G_FILE_ATTRIBUTE_ACCESS_CAN_DELETE "access::can-delete" /* boolean */
- /**
- * G_FILE_ATTRIBUTE_ACCESS_CAN_TRASH:
- *
- * A key in the "access" namespace for checking trashing privileges.
- *
- * Corresponding #GFileAttributeType is %G_FILE_ATTRIBUTE_TYPE_BOOLEAN.
- *
- * This attribute will be %TRUE if the user is able to move the file to
- * the trash.
- **/
- #define G_FILE_ATTRIBUTE_ACCESS_CAN_TRASH "access::can-trash" /* boolean */
- /**
- * G_FILE_ATTRIBUTE_ACCESS_CAN_RENAME:
- *
- * A key in the "access" namespace for checking renaming privileges.
- *
- * Corresponding #GFileAttributeType is %G_FILE_ATTRIBUTE_TYPE_BOOLEAN.
- *
- * This attribute will be %TRUE if the user is able to rename the file.
- **/
- #define G_FILE_ATTRIBUTE_ACCESS_CAN_RENAME "access::can-rename" /* boolean */
- /* TODO: Should we have special version for directories? can_enumerate, etc */
- /* Mountable attributes */
- /**
- * G_FILE_ATTRIBUTE_MOUNTABLE_CAN_MOUNT:
- *
- * A key in the "mountable" namespace for checking if a file (of
- * type G_FILE_TYPE_MOUNTABLE) is mountable.
- *
- * Corresponding #GFileAttributeType is %G_FILE_ATTRIBUTE_TYPE_BOOLEAN.
- **/
- #define G_FILE_ATTRIBUTE_MOUNTABLE_CAN_MOUNT "mountable::can-mount" /* boolean */
- /**
- * G_FILE_ATTRIBUTE_MOUNTABLE_CAN_UNMOUNT:
- *
- * A key in the "mountable" namespace for checking if a file (of
- * type G_FILE_TYPE_MOUNTABLE) is unmountable.
- *
- * Corresponding #GFileAttributeType is %G_FILE_ATTRIBUTE_TYPE_BOOLEAN.
- **/
- #define G_FILE_ATTRIBUTE_MOUNTABLE_CAN_UNMOUNT "mountable::can-unmount" /* boolean */
- /**
- * G_FILE_ATTRIBUTE_MOUNTABLE_CAN_EJECT:
- *
- * A key in the "mountable" namespace for checking if a file (of
- * type G_FILE_TYPE_MOUNTABLE) can be ejected.
- *
- * Corresponding #GFileAttributeType is %G_FILE_ATTRIBUTE_TYPE_BOOLEAN.
- **/
- #define G_FILE_ATTRIBUTE_MOUNTABLE_CAN_EJECT "mountable::can-eject" /* boolean */
- /**
- * G_FILE_ATTRIBUTE_MOUNTABLE_UNIX_DEVICE:
- *
- * A key in the "mountable" namespace for getting the unix device.
- *
- * Corresponding #GFileAttributeType is %G_FILE_ATTRIBUTE_TYPE_UINT32.
- **/
- #define G_FILE_ATTRIBUTE_MOUNTABLE_UNIX_DEVICE "mountable::unix-device" /* uint32 */
- /**
- * G_FILE_ATTRIBUTE_MOUNTABLE_UNIX_DEVICE_FILE:
- *
- * A key in the "mountable" namespace for getting the unix device file.
- *
- * Corresponding #GFileAttributeType is %G_FILE_ATTRIBUTE_TYPE_STRING.
- *
- * Since: 2.22
- **/
- #define G_FILE_ATTRIBUTE_MOUNTABLE_UNIX_DEVICE_FILE "mountable::unix-device-file" /* string */
- /**
- * G_FILE_ATTRIBUTE_MOUNTABLE_HAL_UDI:
- *
- * A key in the "mountable" namespace for getting the HAL UDI for the mountable
- * file.
- *
- * Corresponding #GFileAttributeType is %G_FILE_ATTRIBUTE_TYPE_STRING.
- **/
- #define G_FILE_ATTRIBUTE_MOUNTABLE_HAL_UDI "mountable::hal-udi" /* string */
- /**
- * G_FILE_ATTRIBUTE_MOUNTABLE_CAN_START:
- *
- * A key in the "mountable" namespace for checking if a file (of
- * type G_FILE_TYPE_MOUNTABLE) can be started.
- *
- * Corresponding #GFileAttributeType is %G_FILE_ATTRIBUTE_TYPE_BOOLEAN.
- *
- * Since: 2.22
- */
- #define G_FILE_ATTRIBUTE_MOUNTABLE_CAN_START "mountable::can-start" /* boolean */
- /**
- * G_FILE_ATTRIBUTE_MOUNTABLE_CAN_START_DEGRADED:
- *
- * A key in the "mountable" namespace for checking if a file (of
- * type G_FILE_TYPE_MOUNTABLE) can be started degraded.
- *
- * Corresponding #GFileAttributeType is %G_FILE_ATTRIBUTE_TYPE_BOOLEAN.
- *
- * Since: 2.22
- */
- #define G_FILE_ATTRIBUTE_MOUNTABLE_CAN_START_DEGRADED "mountable::can-start-degraded" /* boolean */
- /**
- * G_FILE_ATTRIBUTE_MOUNTABLE_CAN_STOP:
- *
- * A key in the "mountable" namespace for checking if a file (of
- * type G_FILE_TYPE_MOUNTABLE) can be stopped.
- *
- * Corresponding #GFileAttributeType is %G_FILE_ATTRIBUTE_TYPE_BOOLEAN.
- *
- * Since: 2.22
- */
- #define G_FILE_ATTRIBUTE_MOUNTABLE_CAN_STOP "mountable::can-stop" /* boolean */
- /**
- * G_FILE_ATTRIBUTE_MOUNTABLE_START_STOP_TYPE:
- *
- * A key in the "mountable" namespace for getting the #GDriveStartStopType.
- *
- * Corresponding #GFileAttributeType is %G_FILE_ATTRIBUTE_TYPE_UINT32.
- *
- * Since: 2.22
- */
- #define G_FILE_ATTRIBUTE_MOUNTABLE_START_STOP_TYPE "mountable::start-stop-type" /* uint32 (GDriveStartStopType) */
- /**
- * G_FILE_ATTRIBUTE_MOUNTABLE_CAN_POLL:
- *
- * A key in the "mountable" namespace for checking if a file (of
- * type G_FILE_TYPE_MOUNTABLE) can be polled.
- *
- * Corresponding #GFileAttributeType is %G_FILE_ATTRIBUTE_TYPE_BOOLEAN.
- *
- * Since: 2.22
- */
- #define G_FILE_ATTRIBUTE_MOUNTABLE_CAN_POLL "mountable::can-poll" /* boolean */
- /**
- * G_FILE_ATTRIBUTE_MOUNTABLE_IS_MEDIA_CHECK_AUTOMATIC:
- *
- * A key in the "mountable" namespace for checking if a file (of
- * type G_FILE_TYPE_MOUNTABLE) is automatically polled for media.
- *
- * Corresponding #GFileAttributeType is %G_FILE_ATTRIBUTE_TYPE_BOOLEAN.
- *
- * Since: 2.22
- */
- #define G_FILE_ATTRIBUTE_MOUNTABLE_IS_MEDIA_CHECK_AUTOMATIC "mountable::is-media-check-automatic" /* boolean */
- /* Time attributes */
- /**
- * G_FILE_ATTRIBUTE_TIME_MODIFIED:
- *
- * A key in the "time" namespace for getting the time the file was last
- * modified.
- *
- * Corresponding #GFileAttributeType is %G_FILE_ATTRIBUTE_TYPE_UINT64, and
- * contains the time since the file was modified, in seconds since the UNIX
- * epoch.
- **/
- #define G_FILE_ATTRIBUTE_TIME_MODIFIED "time::modified" /* uint64 */
- /**
- * G_FILE_ATTRIBUTE_TIME_MODIFIED_USEC:
- *
- * A key in the "time" namespace for getting the microseconds of the time
- * the file was last modified.
- *
- * This should be used in conjunction with %G_FILE_ATTRIBUTE_TIME_MODIFIED.
- *
- * Corresponding #GFileAttributeType is %G_FILE_ATTRIBUTE_TYPE_UINT32.
- **/
- #define G_FILE_ATTRIBUTE_TIME_MODIFIED_USEC "time::modified-usec" /* uint32 */
- /**
- * G_FILE_ATTRIBUTE_TIME_MODIFIED_NSEC:
- *
- * A key in the "time" namespace for getting the nanoseconds of the time
- * the file was last modified. This should be used in conjunction with
- * #G_FILE_ATTRIBUTE_TIME_MODIFIED. Corresponding #GFileAttributeType is
- * %G_FILE_ATTRIBUTE_TYPE_UINT32.
- *
- * Since: 2.74
- **/
- #define G_FILE_ATTRIBUTE_TIME_MODIFIED_NSEC "time::modified-nsec" /* uint32 */
- /**
- * G_FILE_ATTRIBUTE_TIME_ACCESS:
- *
- * A key in the "time" namespace for getting the time the file was last
- * accessed.
- *
- * Corresponding #GFileAttributeType is %G_FILE_ATTRIBUTE_TYPE_UINT64, and
- * contains the time since the file was last accessed, in seconds since the
- * UNIX epoch.
- **/
- #define G_FILE_ATTRIBUTE_TIME_ACCESS "time::access" /* uint64 */
- /**
- * G_FILE_ATTRIBUTE_TIME_ACCESS_USEC:
- *
- * A key in the "time" namespace for getting the microseconds of the time
- * the file was last accessed.
- *
- * This should be used in conjunction with %G_FILE_ATTRIBUTE_TIME_ACCESS.
- *
- * Corresponding #GFileAttributeType is %G_FILE_ATTRIBUTE_TYPE_UINT32.
- **/
- #define G_FILE_ATTRIBUTE_TIME_ACCESS_USEC "time::access-usec" /* uint32 */
- /**
- * G_FILE_ATTRIBUTE_TIME_ACCESS_NSEC:
- *
- * A key in the "time" namespace for getting the nanoseconds of the time
- * the file was last accessed. This should be used in conjunction with
- * #G_FILE_ATTRIBUTE_TIME_ACCESS. Corresponding #GFileAttributeType is
- * %G_FILE_ATTRIBUTE_TYPE_UINT32.
- *
- * Since: 2.74
- **/
- #define G_FILE_ATTRIBUTE_TIME_ACCESS_NSEC "time::access-nsec" /* uint32 */
- /**
- * G_FILE_ATTRIBUTE_TIME_CHANGED:
- *
- * A key in the "time" namespace for getting the time the file was last
- * changed.
- *
- * Corresponding #GFileAttributeType is %G_FILE_ATTRIBUTE_TYPE_UINT64,
- * and contains the time since the file was last changed, in seconds since
- * the UNIX epoch.
- *
- * This corresponds to the traditional UNIX ctime.
- **/
- #define G_FILE_ATTRIBUTE_TIME_CHANGED "time::changed" /* uint64 */
- /**
- * G_FILE_ATTRIBUTE_TIME_CHANGED_USEC:
- *
- * A key in the "time" namespace for getting the microseconds of the time
- * the file was last changed.
- *
- * This should be used in conjunction with %G_FILE_ATTRIBUTE_TIME_CHANGED.
- *
- * Corresponding #GFileAttributeType is %G_FILE_ATTRIBUTE_TYPE_UINT32.
- **/
- #define G_FILE_ATTRIBUTE_TIME_CHANGED_USEC "time::changed-usec" /* uint32 */
- /**
- * G_FILE_ATTRIBUTE_TIME_CHANGED_NSEC:
- *
- * A key in the "time" namespace for getting the nanoseconds of the time
- * the file was last changed. This should be used in conjunction with
- * #G_FILE_ATTRIBUTE_TIME_CHANGED. Corresponding #GFileAttributeType is
- * %G_FILE_ATTRIBUTE_TYPE_UINT32.
- *
- * Since: 2.74
- **/
- #define G_FILE_ATTRIBUTE_TIME_CHANGED_NSEC "time::changed-nsec" /* uint32 */
- /**
- * G_FILE_ATTRIBUTE_TIME_CREATED:
- *
- * A key in the "time" namespace for getting the time the file was created.
- *
- * Corresponding #GFileAttributeType is %G_FILE_ATTRIBUTE_TYPE_UINT64,
- * and contains the time since the file was created, in seconds since the UNIX
- * epoch.
- *
- * This may correspond to Linux `stx_btime`, FreeBSD `st_birthtim`, NetBSD
- * `st_birthtime` or NTFS `ctime`.
- **/
- #define G_FILE_ATTRIBUTE_TIME_CREATED "time::created" /* uint64 */
- /**
- * G_FILE_ATTRIBUTE_TIME_CREATED_USEC:
- *
- * A key in the "time" namespace for getting the microseconds of the time
- * the file was created.
- *
- * This should be used in conjunction with %G_FILE_ATTRIBUTE_TIME_CREATED.
- *
- * Corresponding #GFileAttributeType is %G_FILE_ATTRIBUTE_TYPE_UINT32.
- **/
- #define G_FILE_ATTRIBUTE_TIME_CREATED_USEC "time::created-usec" /* uint32 */
- /**
- * G_FILE_ATTRIBUTE_TIME_CREATED_NSEC:
- *
- * A key in the "time" namespace for getting the nanoseconds of the time
- * the file was created. This should be used in conjunction with
- * #G_FILE_ATTRIBUTE_TIME_CREATED. Corresponding #GFileAttributeType is
- * %G_FILE_ATTRIBUTE_TYPE_UINT32.
- *
- * Since: 2.74
- **/
- #define G_FILE_ATTRIBUTE_TIME_CREATED_NSEC "time::created-nsec" /* uint32 */
- /* Unix specific attributes */
- /**
- * G_FILE_ATTRIBUTE_UNIX_DEVICE:
- *
- * A key in the "unix" namespace for getting the device id of the device the
- * file is located on (see stat() documentation).
- *
- * This attribute is only available for UNIX file systems.
- *
- * Corresponding #GFileAttributeType is %G_FILE_ATTRIBUTE_TYPE_UINT32.
- **/
- #define G_FILE_ATTRIBUTE_UNIX_DEVICE "unix::device" /* uint32 */
- /**
- * G_FILE_ATTRIBUTE_UNIX_INODE:
- *
- * A key in the "unix" namespace for getting the inode of the file.
- *
- * This attribute is only available for UNIX file systems.
- *
- * Corresponding #GFileAttributeType is %G_FILE_ATTRIBUTE_TYPE_UINT64.
- **/
- #define G_FILE_ATTRIBUTE_UNIX_INODE "unix::inode" /* uint64 */
- /**
- * G_FILE_ATTRIBUTE_UNIX_MODE:
- *
- * A key in the "unix" namespace for getting the mode of the file
- * (e.g. whether the file is a regular file, symlink, etc).
- *
- * See the documentation for `lstat()`: this attribute is equivalent to
- * the `st_mode` member of `struct stat`, and includes both the file type
- * and permissions.
- *
- * This attribute is only available for UNIX file systems.
- *
- * Corresponding #GFileAttributeType is %G_FILE_ATTRIBUTE_TYPE_UINT32.
- **/
- #define G_FILE_ATTRIBUTE_UNIX_MODE "unix::mode" /* uint32 */
- /**
- * G_FILE_ATTRIBUTE_UNIX_NLINK:
- *
- * A key in the "unix" namespace for getting the number of hard links
- * for a file.
- *
- * See the documentation for `lstat()`.
- *
- * This attribute is only available for UNIX file systems.
- *
- * Corresponding #GFileAttributeType is %G_FILE_ATTRIBUTE_TYPE_UINT32.
- **/
- #define G_FILE_ATTRIBUTE_UNIX_NLINK "unix::nlink" /* uint32 */
- /**
- * G_FILE_ATTRIBUTE_UNIX_UID:
- *
- * A key in the "unix" namespace for getting the user ID for the file.
- *
- * This attribute is only available for UNIX file systems.
- *
- * Corresponding #GFileAttributeType is %G_FILE_ATTRIBUTE_TYPE_UINT32.
- **/
- #define G_FILE_ATTRIBUTE_UNIX_UID "unix::uid" /* uint32 */
- /**
- * G_FILE_ATTRIBUTE_UNIX_GID:
- *
- * A key in the "unix" namespace for getting the group ID for the file.
- *
- * This attribute is only available for UNIX file systems.
- *
- * Corresponding #GFileAttributeType is %G_FILE_ATTRIBUTE_TYPE_UINT32.
- **/
- #define G_FILE_ATTRIBUTE_UNIX_GID "unix::gid" /* uint32 */
- /**
- * G_FILE_ATTRIBUTE_UNIX_RDEV:
- *
- * A key in the "unix" namespace for getting the device ID for the file
- * (if it is a special file).
- *
- * See the documentation for `lstat()`.
- *
- * This attribute is only available for UNIX file systems.
- *
- * Corresponding #GFileAttributeType is %G_FILE_ATTRIBUTE_TYPE_UINT32.
- **/
- #define G_FILE_ATTRIBUTE_UNIX_RDEV "unix::rdev" /* uint32 */
- /**
- * G_FILE_ATTRIBUTE_UNIX_BLOCK_SIZE:
- *
- * A key in the "unix" namespace for getting the block size for the file
- * system.
- *
- * This attribute is only available for UNIX file systems.
- *
- * Corresponding #GFileAttributeType is %G_FILE_ATTRIBUTE_TYPE_UINT32.
- **/
- #define G_FILE_ATTRIBUTE_UNIX_BLOCK_SIZE "unix::block-size" /* uint32 */
- /**
- * G_FILE_ATTRIBUTE_UNIX_BLOCKS:
- *
- * A key in the "unix" namespace for getting the number of blocks allocated
- * for the file.
- *
- * This attribute is only available for UNIX file systems.
- *
- * Corresponding #GFileAttributeType is %G_FILE_ATTRIBUTE_TYPE_UINT64.
- **/
- #define G_FILE_ATTRIBUTE_UNIX_BLOCKS "unix::blocks" /* uint64 */
- /**
- * G_FILE_ATTRIBUTE_UNIX_IS_MOUNTPOINT:
- *
- * A key in the "unix" namespace for checking if the file represents a
- * UNIX mount point.
- *
- * This attribute is %TRUE if the file is a UNIX mount point.
- *
- * Since 2.58, `/` is considered to be a mount point.
- *
- * This attribute is only available for UNIX file systems.
- *
- * Corresponding #GFileAttributeType is %G_FILE_ATTRIBUTE_TYPE_BOOLEAN.
- **/
- #define G_FILE_ATTRIBUTE_UNIX_IS_MOUNTPOINT "unix::is-mountpoint" /* boolean */
- /* DOS specific attributes */
- /**
- * G_FILE_ATTRIBUTE_DOS_IS_ARCHIVE:
- *
- * A key in the "dos" namespace for checking if the file's archive flag
- * is set.
- *
- * This attribute is %TRUE if the archive flag is set.
- *
- * This attribute is only available for DOS file systems.
- *
- * Corresponding #GFileAttributeType is %G_FILE_ATTRIBUTE_TYPE_BOOLEAN.
- **/
- #define G_FILE_ATTRIBUTE_DOS_IS_ARCHIVE "dos::is-archive" /* boolean */
- /**
- * G_FILE_ATTRIBUTE_DOS_IS_SYSTEM:
- *
- * A key in the "dos" namespace for checking if the file's backup flag
- * is set.
- *
- * This attribute is %TRUE if the backup flag is set.
- *
- * This attribute is only available for DOS file systems.
- *
- * Corresponding #GFileAttributeType is %G_FILE_ATTRIBUTE_TYPE_BOOLEAN.
- **/
- #define G_FILE_ATTRIBUTE_DOS_IS_SYSTEM "dos::is-system" /* boolean */
- /**
- * G_FILE_ATTRIBUTE_DOS_IS_MOUNTPOINT:
- *
- * A key in the "dos" namespace for checking if the file is a NTFS mount point
- * (a volume mount or a junction point).
- *
- * This attribute is %TRUE if file is a reparse point of type
- * [IO_REPARSE_TAG_MOUNT_POINT](https://msdn.microsoft.com/en-us/library/dd541667.aspx).
- *
- * This attribute is only available for DOS file systems.
- *
- * Corresponding #GFileAttributeType is %G_FILE_ATTRIBUTE_TYPE_BOOLEAN.
- *
- * Since: 2.60
- **/
- #define G_FILE_ATTRIBUTE_DOS_IS_MOUNTPOINT "dos::is-mountpoint" /* boolean */
- /**
- * G_FILE_ATTRIBUTE_DOS_REPARSE_POINT_TAG:
- *
- * A key in the "dos" namespace for getting the file NTFS reparse tag.
- *
- * This value is 0 for files that are not reparse points.
- *
- * See the [Reparse Tags](https://msdn.microsoft.com/en-us/library/dd541667.aspx)
- * page for possible reparse tag values.
- *
- * Corresponding #GFileAttributeType is %G_FILE_ATTRIBUTE_TYPE_UINT32.
- *
- * Since: 2.60
- **/
- #define G_FILE_ATTRIBUTE_DOS_REPARSE_POINT_TAG "dos::reparse-point-tag" /* uint32 */
- /* Owner attributes */
- /**
- * G_FILE_ATTRIBUTE_OWNER_USER:
- *
- * A key in the "owner" namespace for getting the user name of the
- * file's owner.
- *
- * Corresponding #GFileAttributeType is %G_FILE_ATTRIBUTE_TYPE_STRING.
- **/
- #define G_FILE_ATTRIBUTE_OWNER_USER "owner::user" /* string */
- /**
- * G_FILE_ATTRIBUTE_OWNER_USER_REAL:
- *
- * A key in the "owner" namespace for getting the real name of the
- * user that owns the file.
- *
- * Corresponding #GFileAttributeType is %G_FILE_ATTRIBUTE_TYPE_STRING.
- **/
- #define G_FILE_ATTRIBUTE_OWNER_USER_REAL "owner::user-real" /* string */
- /**
- * G_FILE_ATTRIBUTE_OWNER_GROUP:
- *
- * A key in the "owner" namespace for getting the file owner's group.
- *
- * Corresponding #GFileAttributeType is %G_FILE_ATTRIBUTE_TYPE_STRING.
- **/
- #define G_FILE_ATTRIBUTE_OWNER_GROUP "owner::group" /* string */
- /* Thumbnails */
- /**
- * G_FILE_ATTRIBUTE_THUMBNAIL_PATH:
- *
- * A key in the "thumbnail" namespace for getting the path to the thumbnail
- * image with the biggest size available.
- *
- * Corresponding #GFileAttributeType is %G_FILE_ATTRIBUTE_TYPE_BYTE_STRING.
- **/
- #define G_FILE_ATTRIBUTE_THUMBNAIL_PATH "thumbnail::path" /* bytestring */
- /**
- * G_FILE_ATTRIBUTE_THUMBNAILING_FAILED:
- *
- * A key in the "thumbnail" namespace for checking if thumbnailing failed.
- *
- * This attribute is %TRUE if thumbnailing failed.
- *
- * Corresponding #GFileAttributeType is %G_FILE_ATTRIBUTE_TYPE_BOOLEAN.
- **/
- #define G_FILE_ATTRIBUTE_THUMBNAILING_FAILED "thumbnail::failed" /* boolean */
- /**
- * G_FILE_ATTRIBUTE_THUMBNAIL_IS_VALID:
- *
- * A key in the "thumbnail" namespace for checking whether the thumbnail is outdated.
- *
- * This attribute is %TRUE if the thumbnail is up-to-date with the file it represents,
- * and %FALSE if the file has been modified since the thumbnail was generated.
- *
- * If %G_FILE_ATTRIBUTE_THUMBNAILING_FAILED is %TRUE and this attribute is %FALSE,
- * it indicates that thumbnailing may be attempted again and may succeed.
- *
- * Corresponding #GFileAttributeType is %G_FILE_ATTRIBUTE_TYPE_BOOLEAN.
- *
- * Since: 2.40
- */
- #define G_FILE_ATTRIBUTE_THUMBNAIL_IS_VALID "thumbnail::is-valid" /* boolean */
- /**
- * G_FILE_ATTRIBUTE_THUMBNAIL_PATH_NORMAL:
- *
- * A key in the "thumbnail" namespace for getting the path to the normal
- * thumbnail image.
- *
- * Corresponding #GFileAttributeType is %G_FILE_ATTRIBUTE_TYPE_BYTE_STRING.
- *
- * Since: 2.76
- */
- #define G_FILE_ATTRIBUTE_THUMBNAIL_PATH_NORMAL "thumbnail::path-normal" /* bytestring */
- /**
- * G_FILE_ATTRIBUTE_THUMBNAILING_FAILED_NORMAL:
- *
- * A key in the "thumbnail" namespace for checking if thumbnailing failed
- * for the normal image.
- *
- * This attribute is %TRUE if thumbnailing failed.
- *
- * Corresponding #GFileAttributeType is %G_FILE_ATTRIBUTE_TYPE_BOOLEAN.
- *
- * Since: 2.76
- */
- #define G_FILE_ATTRIBUTE_THUMBNAILING_FAILED_NORMAL "thumbnail::failed-normal" /* boolean */
- /**
- * G_FILE_ATTRIBUTE_THUMBNAIL_IS_VALID_NORMAL:
- *
- * A key in the "thumbnail" namespace for checking whether the normal
- * thumbnail is outdated.
- *
- * This attribute is %TRUE if the normal thumbnail is up-to-date with the file
- * it represents, and %FALSE if the file has been modified since the thumbnail
- * was generated.
- *
- * If %G_FILE_ATTRIBUTE_THUMBNAILING_FAILED_NORMAL is %TRUE and this attribute
- * is %FALSE, it indicates that thumbnailing may be attempted again and may
- * succeed.
- *
- * Corresponding #GFileAttributeType is %G_FILE_ATTRIBUTE_TYPE_BOOLEAN.
- *
- * Since: 2.76
- */
- #define G_FILE_ATTRIBUTE_THUMBNAIL_IS_VALID_NORMAL "thumbnail::is-valid-normal" /* boolean */
- /**
- * G_FILE_ATTRIBUTE_THUMBNAIL_PATH_LARGE:
- *
- * A key in the "thumbnail" namespace for getting the path to the large
- * thumbnail image.
- *
- * Corresponding #GFileAttributeType is %G_FILE_ATTRIBUTE_TYPE_BYTE_STRING.
- *
- * Since: 2.76
- */
- #define G_FILE_ATTRIBUTE_THUMBNAIL_PATH_LARGE "thumbnail::path-large" /* bytestring */
- /**
- * G_FILE_ATTRIBUTE_THUMBNAILING_FAILED_LARGE:
- *
- * A key in the "thumbnail" namespace for checking if thumbnailing failed
- * for the large image.
- *
- * This attribute is %TRUE if thumbnailing failed.
- *
- * Corresponding #GFileAttributeType is %G_FILE_ATTRIBUTE_TYPE_BOOLEAN.
- *
- * Since: 2.76
- */
- #define G_FILE_ATTRIBUTE_THUMBNAILING_FAILED_LARGE "thumbnail::failed-large" /* boolean */
- /**
- * G_FILE_ATTRIBUTE_THUMBNAIL_IS_VALID_LARGE:
- *
- * A key in the "thumbnail" namespace for checking whether the large
- * thumbnail is outdated.
- *
- * This attribute is %TRUE if the large thumbnail is up-to-date with the file
- * it represents, and %FALSE if the file has been modified since the thumbnail
- * was generated.
- *
- * If %G_FILE_ATTRIBUTE_THUMBNAILING_FAILED_LARGE is %TRUE and this attribute
- * is %FALSE, it indicates that thumbnailing may be attempted again and may
- * succeed.
- *
- * Corresponding #GFileAttributeType is %G_FILE_ATTRIBUTE_TYPE_BOOLEAN.
- *
- * Since: 2.76
- */
- #define G_FILE_ATTRIBUTE_THUMBNAIL_IS_VALID_LARGE "thumbnail::is-valid-large" /* boolean */
- /**
- * G_FILE_ATTRIBUTE_THUMBNAIL_PATH_XLARGE:
- *
- * A key in the "thumbnail" namespace for getting the path to the x-large
- * thumbnail image.
- *
- * Corresponding #GFileAttributeType is %G_FILE_ATTRIBUTE_TYPE_BYTE_STRING.
- *
- * Since: 2.76
- */
- #define G_FILE_ATTRIBUTE_THUMBNAIL_PATH_XLARGE "thumbnail::path-xlarge" /* bytestring */
- /**
- * G_FILE_ATTRIBUTE_THUMBNAILING_FAILED_XLARGE:
- *
- * A key in the "thumbnail" namespace for checking if thumbnailing failed
- * for the x-large image.
- *
- * This attribute is %TRUE if thumbnailing failed.
- *
- * Corresponding #GFileAttributeType is %G_FILE_ATTRIBUTE_TYPE_BOOLEAN.
- *
- * Since: 2.76
- */
- #define G_FILE_ATTRIBUTE_THUMBNAILING_FAILED_XLARGE "thumbnail::failed-xlarge" /* boolean */
- /**
- * G_FILE_ATTRIBUTE_THUMBNAIL_IS_VALID_XLARGE:
- *
- * A key in the "thumbnail" namespace for checking whether the x-large
- * thumbnail is outdated.
- *
- * This attribute is %TRUE if the x-large thumbnail is up-to-date with the file
- * it represents, and %FALSE if the file has been modified since the thumbnail
- * was generated.
- *
- * If %G_FILE_ATTRIBUTE_THUMBNAILING_FAILED_XLARGE is %TRUE and this attribute
- * is %FALSE, it indicates that thumbnailing may be attempted again and may
- * succeed.
- *
- * Corresponding #GFileAttributeType is %G_FILE_ATTRIBUTE_TYPE_BOOLEAN.
- *
- * Since: 2.76
- */
- #define G_FILE_ATTRIBUTE_THUMBNAIL_IS_VALID_XLARGE "thumbnail::is-valid-xlarge" /* boolean */
- /**
- * G_FILE_ATTRIBUTE_THUMBNAIL_PATH_XXLARGE:
- *
- * A key in the "thumbnail" namespace for getting the path to the xx-large
- * thumbnail image.
- *
- * Corresponding #GFileAttributeType is %G_FILE_ATTRIBUTE_TYPE_BYTE_STRING.
- *
- * Since: 2.76
- */
- #define G_FILE_ATTRIBUTE_THUMBNAIL_PATH_XXLARGE "thumbnail::path-xxlarge" /* bytestring */
- /**
- * G_FILE_ATTRIBUTE_THUMBNAILING_FAILED_XXLARGE:
- *
- * A key in the "thumbnail" namespace for checking if thumbnailing failed
- * for the xx-large image.
- *
- * This attribute is %TRUE if thumbnailing failed.
- *
- * Corresponding #GFileAttributeType is %G_FILE_ATTRIBUTE_TYPE_BOOLEAN.
- *
- * Since: 2.76
- */
- #define G_FILE_ATTRIBUTE_THUMBNAILING_FAILED_XXLARGE "thumbnail::failed-xxlarge" /* boolean */
- /**
- * G_FILE_ATTRIBUTE_THUMBNAIL_IS_VALID_XXLARGE:
- *
- * A key in the "thumbnail" namespace for checking whether the xx-large
- * thumbnail is outdated.
- *
- * This attribute is %TRUE if the x-large thumbnail is up-to-date with the file
- * it represents, and %FALSE if the file has been modified since the thumbnail
- * was generated.
- *
- * If %G_FILE_ATTRIBUTE_THUMBNAILING_FAILED_XXLARGE is %TRUE and this attribute
- * is %FALSE, it indicates that thumbnailing may be attempted again and may
- * succeed.
- *
- * Corresponding #GFileAttributeType is %G_FILE_ATTRIBUTE_TYPE_BOOLEAN.
- *
- * Since: 2.76
- */
- #define G_FILE_ATTRIBUTE_THUMBNAIL_IS_VALID_XXLARGE "thumbnail::is-valid-xxlarge" /* boolean */
- /* Preview */
- /**
- * G_FILE_ATTRIBUTE_PREVIEW_ICON:
- *
- * A key in the "preview" namespace for getting a #GIcon that can be
- * used to get preview of the file.
- *
- * For example, it may be a low resolution thumbnail without metadata.
- *
- * Corresponding #GFileAttributeType is %G_FILE_ATTRIBUTE_TYPE_OBJECT.
- *
- * The value for this key should contain a #GIcon.
- *
- * Since: 2.20
- **/
- #define G_FILE_ATTRIBUTE_PREVIEW_ICON "preview::icon" /* object (GIcon) */
- /* File system info (for g_file_get_filesystem_info) */
- /**
- * G_FILE_ATTRIBUTE_FILESYSTEM_SIZE:
- *
- * A key in the "filesystem" namespace for getting the total size (in
- * bytes) of the file system, used in g_file_query_filesystem_info().
- *
- * Corresponding #GFileAttributeType is %G_FILE_ATTRIBUTE_TYPE_UINT64.
- **/
- #define G_FILE_ATTRIBUTE_FILESYSTEM_SIZE "filesystem::size" /* uint64 */
- /**
- * G_FILE_ATTRIBUTE_FILESYSTEM_FREE:
- *
- * A key in the "filesystem" namespace for getting the number of bytes
- * of free space left on the file system.
- *
- * Corresponding #GFileAttributeType is %G_FILE_ATTRIBUTE_TYPE_UINT64.
- **/
- #define G_FILE_ATTRIBUTE_FILESYSTEM_FREE "filesystem::free" /* uint64 */
- /**
- * G_FILE_ATTRIBUTE_FILESYSTEM_USED:
- *
- * A key in the "filesystem" namespace for getting the number of bytes
- * used by data on the file system.
- *
- * Corresponding #GFileAttributeType is %G_FILE_ATTRIBUTE_TYPE_UINT64.
- *
- * Since: 2.32
- */
- #define G_FILE_ATTRIBUTE_FILESYSTEM_USED "filesystem::used" /* uint64 */
- /**
- * G_FILE_ATTRIBUTE_FILESYSTEM_TYPE:
- *
- * A key in the "filesystem" namespace for getting the file system's type.
- *
- * Corresponding #GFileAttributeType is %G_FILE_ATTRIBUTE_TYPE_STRING.
- **/
- #define G_FILE_ATTRIBUTE_FILESYSTEM_TYPE "filesystem::type" /* string */
- /**
- * G_FILE_ATTRIBUTE_FILESYSTEM_READONLY:
- *
- * A key in the "filesystem" namespace for checking if the file system
- * is read only.
- *
- * Is set to %TRUE if the file system is read only.
- *
- * Corresponding #GFileAttributeType is %G_FILE_ATTRIBUTE_TYPE_BOOLEAN.
- **/
- #define G_FILE_ATTRIBUTE_FILESYSTEM_READONLY "filesystem::readonly" /* boolean */
- /**
- * G_FILE_ATTRIBUTE_FILESYSTEM_USE_PREVIEW:
- *
- * A key in the "filesystem" namespace for hinting a file manager
- * application whether it should preview (e.g. thumbnail) files on the
- * file system.
- *
- * The value for this key contain a #GFilesystemPreviewType.
- **/
- #define G_FILE_ATTRIBUTE_FILESYSTEM_USE_PREVIEW "filesystem::use-preview" /* uint32 (GFilesystemPreviewType) */
- /**
- * G_FILE_ATTRIBUTE_FILESYSTEM_REMOTE:
- *
- * A key in the "filesystem" namespace for checking if the file system
- * is remote.
- *
- * Is set to %TRUE if the file system is remote.
- *
- * Corresponding #GFileAttributeType is %G_FILE_ATTRIBUTE_TYPE_BOOLEAN.
- **/
- #define G_FILE_ATTRIBUTE_FILESYSTEM_REMOTE "filesystem::remote" /* boolean */
- /**
- * G_FILE_ATTRIBUTE_GVFS_BACKEND:
- *
- * A key in the "gvfs" namespace that gets the name of the current
- * GVFS backend in use.
- *
- * Corresponding #GFileAttributeType is %G_FILE_ATTRIBUTE_TYPE_STRING.
- **/
- #define G_FILE_ATTRIBUTE_GVFS_BACKEND "gvfs::backend" /* string */
- /**
- * G_FILE_ATTRIBUTE_SELINUX_CONTEXT:
- *
- * A key in the "selinux" namespace for getting the file's SELinux
- * context.
- *
- * Corresponding #GFileAttributeType is %G_FILE_ATTRIBUTE_TYPE_STRING.
- *
- * Note that this attribute is only available if GLib has been built
- * with SELinux support.
- **/
- #define G_FILE_ATTRIBUTE_SELINUX_CONTEXT "selinux::context" /* string */
- /**
- * G_FILE_ATTRIBUTE_TRASH_ITEM_COUNT:
- *
- * A key in the "trash" namespace for getting the number of (toplevel) items
- * that are present in the `trash:///` folder.
- *
- * Corresponding #GFileAttributeType is %G_FILE_ATTRIBUTE_TYPE_UINT32.
- **/
- #define G_FILE_ATTRIBUTE_TRASH_ITEM_COUNT "trash::item-count" /* uint32 */
- /**
- * G_FILE_ATTRIBUTE_TRASH_ORIG_PATH:
- *
- * A key in the "trash" namespace for getting the original path of a file
- * inside the `trash:///` folder before it was trashed.
- *
- * Corresponding #GFileAttributeType is %G_FILE_ATTRIBUTE_TYPE_BYTE_STRING.
- *
- * Since: 2.24
- **/
- #define G_FILE_ATTRIBUTE_TRASH_ORIG_PATH "trash::orig-path" /* byte string */
- /**
- * G_FILE_ATTRIBUTE_TRASH_DELETION_DATE:
- *
- * A key in the "trash" namespace for getting the deletion date and time
- * of a file inside the `trash:///` folder.
- *
- * The format of the returned string is `YYYY-MM-DDThh:mm:ss`.
- *
- * Corresponding #GFileAttributeType is %G_FILE_ATTRIBUTE_TYPE_STRING.
- *
- * Since: 2.24
- **/
- #define G_FILE_ATTRIBUTE_TRASH_DELETION_DATE "trash::deletion-date" /* string */
- /**
- * G_FILE_ATTRIBUTE_RECENT_MODIFIED:
- *
- * A key in the "recent" namespace for getting time, when the metadata for the
- * file in `recent:///` was last changed.
- *
- * Corresponding #GFileAttributeType is %G_FILE_ATTRIBUTE_TYPE_INT64.
- *
- * Since: 2.52
- **/
- #define G_FILE_ATTRIBUTE_RECENT_MODIFIED "recent::modified" /* int64 (time_t) */
- GIO_AVAILABLE_IN_ALL
- GType g_file_info_get_type (void) G_GNUC_CONST;
- GIO_AVAILABLE_IN_ALL
- GFileInfo * g_file_info_new (void);
- GIO_AVAILABLE_IN_ALL
- GFileInfo * g_file_info_dup (GFileInfo *other);
- GIO_AVAILABLE_IN_ALL
- void g_file_info_copy_into (GFileInfo *src_info,
- GFileInfo *dest_info);
- GIO_AVAILABLE_IN_ALL
- gboolean g_file_info_has_attribute (GFileInfo *info,
- const char *attribute);
- GIO_AVAILABLE_IN_ALL
- gboolean g_file_info_has_namespace (GFileInfo *info,
- const char *name_space);
- GIO_AVAILABLE_IN_ALL
- char ** g_file_info_list_attributes (GFileInfo *info,
- const char *name_space);
- GIO_AVAILABLE_IN_ALL
- gboolean g_file_info_get_attribute_data (GFileInfo *info,
- const char *attribute,
- GFileAttributeType *type,
- gpointer *value_pp,
- GFileAttributeStatus *status);
- GIO_AVAILABLE_IN_ALL
- GFileAttributeType g_file_info_get_attribute_type (GFileInfo *info,
- const char *attribute);
- GIO_AVAILABLE_IN_ALL
- void g_file_info_remove_attribute (GFileInfo *info,
- const char *attribute);
- GIO_AVAILABLE_IN_ALL
- GFileAttributeStatus g_file_info_get_attribute_status (GFileInfo *info,
- const char *attribute);
- GIO_AVAILABLE_IN_ALL
- gboolean g_file_info_set_attribute_status (GFileInfo *info,
- const char *attribute,
- GFileAttributeStatus status);
- GIO_AVAILABLE_IN_ALL
- char * g_file_info_get_attribute_as_string (GFileInfo *info,
- const char *attribute);
- GIO_AVAILABLE_IN_ALL
- const char * g_file_info_get_attribute_string (GFileInfo *info,
- const char *attribute);
- GIO_AVAILABLE_IN_ALL
- const char * g_file_info_get_attribute_byte_string (GFileInfo *info,
- const char *attribute);
- GIO_AVAILABLE_IN_ALL
- gboolean g_file_info_get_attribute_boolean (GFileInfo *info,
- const char *attribute);
- GIO_AVAILABLE_IN_ALL
- guint32 g_file_info_get_attribute_uint32 (GFileInfo *info,
- const char *attribute);
- GIO_AVAILABLE_IN_ALL
- gint32 g_file_info_get_attribute_int32 (GFileInfo *info,
- const char *attribute);
- GIO_AVAILABLE_IN_ALL
- guint64 g_file_info_get_attribute_uint64 (GFileInfo *info,
- const char *attribute);
- GIO_AVAILABLE_IN_ALL
- gint64 g_file_info_get_attribute_int64 (GFileInfo *info,
- const char *attribute);
- GIO_AVAILABLE_IN_ALL
- GObject * g_file_info_get_attribute_object (GFileInfo *info,
- const char *attribute);
- GIO_AVAILABLE_IN_ALL
- char ** g_file_info_get_attribute_stringv (GFileInfo *info,
- const char *attribute);
- GIO_AVAILABLE_IN_2_78
- const char * g_file_info_get_attribute_file_path (GFileInfo *info,
- const char *attribute);
- GIO_AVAILABLE_IN_ALL
- void g_file_info_set_attribute (GFileInfo *info,
- const char *attribute,
- GFileAttributeType type,
- gpointer value_p);
- GIO_AVAILABLE_IN_ALL
- void g_file_info_set_attribute_string (GFileInfo *info,
- const char *attribute,
- const char *attr_value);
- GIO_AVAILABLE_IN_ALL
- void g_file_info_set_attribute_byte_string (GFileInfo *info,
- const char *attribute,
- const char *attr_value);
- GIO_AVAILABLE_IN_ALL
- void g_file_info_set_attribute_boolean (GFileInfo *info,
- const char *attribute,
- gboolean attr_value);
- GIO_AVAILABLE_IN_ALL
- void g_file_info_set_attribute_uint32 (GFileInfo *info,
- const char *attribute,
- guint32 attr_value);
- GIO_AVAILABLE_IN_ALL
- void g_file_info_set_attribute_int32 (GFileInfo *info,
- const char *attribute,
- gint32 attr_value);
- GIO_AVAILABLE_IN_ALL
- void g_file_info_set_attribute_uint64 (GFileInfo *info,
- const char *attribute,
- guint64 attr_value);
- GIO_AVAILABLE_IN_ALL
- void g_file_info_set_attribute_int64 (GFileInfo *info,
- const char *attribute,
- gint64 attr_value);
- GIO_AVAILABLE_IN_ALL
- void g_file_info_set_attribute_object (GFileInfo *info,
- const char *attribute,
- GObject *attr_value);
- GIO_AVAILABLE_IN_ALL
- void g_file_info_set_attribute_stringv (GFileInfo *info,
- const char *attribute,
- char **attr_value);
- GIO_AVAILABLE_IN_2_78
- void g_file_info_set_attribute_file_path (GFileInfo *info,
- const char *attribute,
- const char *attr_value);
- GIO_AVAILABLE_IN_ALL
- void g_file_info_clear_status (GFileInfo *info);
- /* Helper getters: */
- GIO_AVAILABLE_IN_2_36
- GDateTime * g_file_info_get_deletion_date (GFileInfo *info);
- GIO_AVAILABLE_IN_ALL
- GFileType g_file_info_get_file_type (GFileInfo *info);
- GIO_AVAILABLE_IN_ALL
- gboolean g_file_info_get_is_hidden (GFileInfo *info);
- GIO_AVAILABLE_IN_ALL
- gboolean g_file_info_get_is_backup (GFileInfo *info);
- GIO_AVAILABLE_IN_ALL
- gboolean g_file_info_get_is_symlink (GFileInfo *info);
- GIO_AVAILABLE_IN_ALL
- const char * g_file_info_get_name (GFileInfo *info);
- GIO_AVAILABLE_IN_ALL
- const char * g_file_info_get_display_name (GFileInfo *info);
- GIO_AVAILABLE_IN_ALL
- const char * g_file_info_get_edit_name (GFileInfo *info);
- GIO_AVAILABLE_IN_ALL
- GIcon * g_file_info_get_icon (GFileInfo *info);
- GIO_AVAILABLE_IN_ALL
- GIcon * g_file_info_get_symbolic_icon (GFileInfo *info);
- GIO_AVAILABLE_IN_ALL
- const char * g_file_info_get_content_type (GFileInfo *info);
- GIO_AVAILABLE_IN_ALL
- goffset g_file_info_get_size (GFileInfo *info);
- G_GNUC_BEGIN_IGNORE_DEPRECATIONS
- GIO_DEPRECATED_IN_2_62_FOR(g_file_info_get_modification_date_time)
- void g_file_info_get_modification_time (GFileInfo *info,
- GTimeVal *result);
- G_GNUC_END_IGNORE_DEPRECATIONS
- GIO_AVAILABLE_IN_2_62
- GDateTime * g_file_info_get_modification_date_time (GFileInfo *info);
- GIO_AVAILABLE_IN_2_70
- GDateTime * g_file_info_get_access_date_time (GFileInfo *info);
- GIO_AVAILABLE_IN_2_70
- GDateTime * g_file_info_get_creation_date_time (GFileInfo *info);
- GIO_AVAILABLE_IN_ALL
- const char * g_file_info_get_symlink_target (GFileInfo *info);
- GIO_AVAILABLE_IN_ALL
- const char * g_file_info_get_etag (GFileInfo *info);
- GIO_AVAILABLE_IN_ALL
- gint32 g_file_info_get_sort_order (GFileInfo *info);
- GIO_AVAILABLE_IN_ALL
- void g_file_info_set_attribute_mask (GFileInfo *info,
- GFileAttributeMatcher *mask);
- GIO_AVAILABLE_IN_ALL
- void g_file_info_unset_attribute_mask (GFileInfo *info);
- /* Helper setters: */
- GIO_AVAILABLE_IN_ALL
- void g_file_info_set_file_type (GFileInfo *info,
- GFileType type);
- GIO_AVAILABLE_IN_ALL
- void g_file_info_set_is_hidden (GFileInfo *info,
- gboolean is_hidden);
- GIO_AVAILABLE_IN_ALL
- void g_file_info_set_is_symlink (GFileInfo *info,
- gboolean is_symlink);
- GIO_AVAILABLE_IN_ALL
- void g_file_info_set_name (GFileInfo *info,
- const char *name);
- GIO_AVAILABLE_IN_ALL
- void g_file_info_set_display_name (GFileInfo *info,
- const char *display_name);
- GIO_AVAILABLE_IN_ALL
- void g_file_info_set_edit_name (GFileInfo *info,
- const char *edit_name);
- GIO_AVAILABLE_IN_ALL
- void g_file_info_set_icon (GFileInfo *info,
- GIcon *icon);
- GIO_AVAILABLE_IN_ALL
- void g_file_info_set_symbolic_icon (GFileInfo *info,
- GIcon *icon);
- GIO_AVAILABLE_IN_ALL
- void g_file_info_set_content_type (GFileInfo *info,
- const char *content_type);
- GIO_AVAILABLE_IN_ALL
- void g_file_info_set_size (GFileInfo *info,
- goffset size);
- G_GNUC_BEGIN_IGNORE_DEPRECATIONS
- GIO_DEPRECATED_IN_2_62_FOR(g_file_info_set_modification_date_time)
- void g_file_info_set_modification_time (GFileInfo *info,
- GTimeVal *mtime);
- G_GNUC_END_IGNORE_DEPRECATIONS
- GIO_AVAILABLE_IN_2_62
- void g_file_info_set_modification_date_time (GFileInfo *info,
- GDateTime *mtime);
- GIO_AVAILABLE_IN_2_70
- void g_file_info_set_access_date_time (GFileInfo *info,
- GDateTime *atime);
- GIO_AVAILABLE_IN_2_70
- void g_file_info_set_creation_date_time (GFileInfo *info,
- GDateTime *creation_time);
- GIO_AVAILABLE_IN_ALL
- void g_file_info_set_symlink_target (GFileInfo *info,
- const char *symlink_target);
- GIO_AVAILABLE_IN_ALL
- void g_file_info_set_sort_order (GFileInfo *info,
- gint32 sort_order);
- #define G_TYPE_FILE_ATTRIBUTE_MATCHER (g_file_attribute_matcher_get_type ())
- GIO_AVAILABLE_IN_ALL
- GType g_file_attribute_matcher_get_type (void) G_GNUC_CONST;
- GIO_AVAILABLE_IN_ALL
- GFileAttributeMatcher *g_file_attribute_matcher_new (const char *attributes);
- GIO_AVAILABLE_IN_ALL
- GFileAttributeMatcher *g_file_attribute_matcher_ref (GFileAttributeMatcher *matcher);
- GIO_AVAILABLE_IN_ALL
- void g_file_attribute_matcher_unref (GFileAttributeMatcher *matcher);
- GIO_AVAILABLE_IN_ALL
- GFileAttributeMatcher *g_file_attribute_matcher_subtract (GFileAttributeMatcher *matcher,
- GFileAttributeMatcher *subtract);
- GIO_AVAILABLE_IN_ALL
- gboolean g_file_attribute_matcher_matches (GFileAttributeMatcher *matcher,
- const char *attribute);
- GIO_AVAILABLE_IN_ALL
- gboolean g_file_attribute_matcher_matches_only (GFileAttributeMatcher *matcher,
- const char *attribute);
- GIO_AVAILABLE_IN_ALL
- gboolean g_file_attribute_matcher_enumerate_namespace (GFileAttributeMatcher *matcher,
- const char *ns);
- GIO_AVAILABLE_IN_ALL
- const char * g_file_attribute_matcher_enumerate_next (GFileAttributeMatcher *matcher);
- GIO_AVAILABLE_IN_2_32
- char * g_file_attribute_matcher_to_string (GFileAttributeMatcher *matcher);
- G_END_DECLS
- #endif /* __G_FILE_INFO_H__ */
|